Laravel 4,控制器和根URI


Laravel 4, Controllers, and the Root URI

当我这样做时:

Route::controller('/', 'MyPackage''Controllers''HomeController');

控制器劫持应用程序中的所有路由。我如何做到这一点,使它只捕获根URI?

这是在Laravel中为根URI创建RESTful控制器的正确方法:

Route::controller('', 'MyPackage''Controllers''HomeController');

请注意,这个答案显示在OP中的编辑中,由@swt83自己制作。

这一切都与路由声明的顺序有关。

确保路由在workbench/vendor/package/src/routes.php文件的最后:

Route::controller('foobar', 'MyPackage''Controllers''FoobarController');
Route::controller('/', 'MyPackage''Controllers''HomeController'); // this is last

确保提供程序位于app/config/app.php文件的最后:

'Foobar'Provider',
'Mypackage'Provider', // this is last

你只需要确保到根节点的路由是Laravel在使用它作为控制器时考虑的最后一条路由。