我很好奇 - 是否可以在任何地方使用资源控制器,例如,根据URL中的某些参数显示不同页面的控制器?
例如,我有两个资源控制器:
PagesController
PostsController
相关路线:
Route::resource('', 'PagesController');
Route::resource('posts', 'PostsController');
当我呼叫php artisan routes
时,posts
的所有路由都显而易见,例如,如果我想要show
特定帖子,那么我可以使用下一个网址:
/public/posts/1
/public/posts/2
/public/posts/3
这些网址会将请求重定向到此方法:
class PostsController extends \BaseController {
public function show($id)
{
print 'Show : ' . $id;
}
}
问题:如果页面没有名称,如何为页面调用相同的方法,并且根据我的路线,我应该使用哪个URL来调用PagesController@show
?
/public/1
/public/show/1
/public/1/show
我想,我可以使用上面的网址,但它们不起作用,我得到HttpNotFoundException