2016-04-24 43 views
1

有沒有辦法在視圖編輯器函數中返回控制器方法的響應?這是當前返回一個字符串,命名空間。Laravel - 用控制器方法查看作曲家?

view()->composer('tasks.partial.tasksummary', function($view) 
{ 
    $view->with('taskload', 'App\Http\Controllers\[email protected]'); 
}); 

或...會是更好的只是注入的方法在我的部分直接(通過@inject('..'))?

+0

這聽起來像是更適合例如一個任務模型。但你可以做'$ taskload =(new App \ Http \ Controllers \ Taskcontroller) - > taskLoad(); $ view-> with('taskload',$ taskload);'或類似的。 –

+0

體面的解決方案。不是最漂亮的,但它會做的伎倆。寫一個答案,我會接受它;) –

+0

是的,這是一個解決方案,但它可能不是解決方案。 :)謝謝,我會把它放在一個答案。 –

回答

1

這聽起來像是更適合例如一個任務模型。但你可以這樣做:

$taskload = (new App\Http\Controllers\Taskcontroller)->taskLoad(); 
$view->with('taskload', $taskload); 
+0

不錯。你會建議什麼其他解決方案? –

+0

不知道你的項目或代碼很難說。但是,一般來說,我將作曲家和控制者視爲請​​求和邏輯之間交互的兩種方式。但我不會混淆兩者。因此,如果我需要某種獲取數據的方式,我將它放在模型中,存儲庫中或數據庫中(等等),具體取決於它究竟是什麼。 –

+0

我聽到你的聲音。那麼,我最初把邏輯放在一個控制器中......這是一個生成「任務負載」的代碼,使用了幾個不同的模型等等。但是隨後我在整個少數不同的頁面上需要這個對象,而沒有想重複上百次的代碼。所以很自然,思想觀點作曲家。也許庫/庫是最好的方法。模型,我傾向於保持相當乾淨。只是關係,範圍,屬性等 –