我想知道如何区分子资源中不同父资源的请求.
考虑子资源评论,由帖子和用户共享.注释控制器如何知道正确的父资源是什么?
我有这些路线:
Route::resource('posts', 'PostsController');
Route::resource('posts.comments', 'CommentsController');
Route::resource('users', 'UsersController');
Route::resource('users.comments', 'CommentsController');
Run Code Online (Sandbox Code Playgroud)
在CommentsController,我有这个功能:
public function index($parent_id) {
// return multiple comments here
}
Run Code Online (Sandbox Code Playgroud)
因此,我可能希望显示属于某个帖子的所有评论或属于用户的所有评论,但在这种情况下,如何CommentsController判断是否$parent_id引用帖子或用户?
这应该工作
Route::resource('posts', 'PostsController');
Route::resource('users', 'UsersController');
Route::resource('posts.comments', 'CommentsController');
Route::resource('users.comments', 'CommentsController');
Run Code Online (Sandbox Code Playgroud)
让父母使用这个
$parent = Request::segment(1) === 'posts' ? 'posts' : 'users';
Run Code Online (Sandbox Code Playgroud)