[英]Nesting controllers and views in Laravel
我的Laravel項目中有一個名為ImageController
的控制器。 這是一個非常基本的CRUD控制器。
當我通過我的ImageController@show
動作訪問/images/{id}
,我還想顯示注釋。 但是,我不想將注釋邏輯放在我的ImageController
。 對於這個邏輯,我創建了一個ImageCommentController
。
我不太確定如何解決這個問題,但我正在嘗試做這類事情:
class ImageController extends BaseController {
// methods ...
public function show($id)
{
$images = // get images ...
$this->layout->view = // images.show and imagescomment.index (using ImageCommentsController@index logic)
}
}
如果這是含糊的措辭,我很抱歉,讓我知道是否是這樣,我會盡量讓它更容易理解。
也許比使用Controller顯示注釋更好的解決方案是使用一個帶有renderComments()方法的類,它基本上可以執行以下操作:
class Comments {
public static renderComments($commentType = 'images')
{
$comments = Comments::where('comment_type', '=', $commentType)->get();
return View::make('comments', $comments)->render();
}
}
然后例如在圖像視圖中:
...
{{ Comments::renderComments() }}
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.