如何在Laravel 4(Restfull控制器)中创建管理员特定的路由:
/admin/users (get - /admin/users/index)
/admin/users/create (get)
/admin/users/store (post)
我想知道:
答案 0 :(得分:10)
在Laravel 4
中,您现在可以使用prefix
:
Route::group(['prefix' => 'admin'], function() {
Route::get('/', 'AdminController@home');
Route::get('posts', 'AdminController@showPosts');
Route::get('another', function() {
return 'Another routing';
});
Route::get('foo', function() {
return Response::make('BARRRRR', 200);
});
Route::get('bazz', function() {
return View::make('bazztemplate');
});
});
答案 1 :(得分:4)
对于你的子文件夹,正如我在这里回答的"route-to-controller-in-subfolder-not-working-in-laravel-4",在这个laravel 4 beta中似乎没有“友好”的解决方案。
@Aran,如果你的工作正常,请添加你的控制器,路由和composer.json文件的代码示例:Route::resource('admin/users', 'admin.Users');
或
Route::resource('admin', 'admin.Users');
感谢
答案 2 :(得分:3)
您可以使用的真正有用的工具是artisan
CLI。
使用此功能,您将能够生成所需的功能文件,其中包含所有必需的路径,以使其成为RESTful。
php artisan controller:make users
会为您生成函数文件。然后在routes.php文件中,您只需添加
即可Route::resource('users', 'Users');
这将设置所有必要的路线。
有关此内容的更多信息,请阅读文档。
http://four.laravel.com/docs/routing#resource-controllers
http://four.laravel.com/docs/artisan
修改强>
要使此管理员具体,请简单地更改代码,如下所示,并将控制器移动到controllers文件夹内的管理文件夹。
Route::resource('admin/users', 'admin.Users');
第一个参数是路径,第二个参数是控制器文件名/文件夹。
在Laravel中,如果您将控制器放在文件夹中,要在路径或URL中指定它,您可以使用一个点作为文件夹。
然后,您可以对此进行扩展并使用路径过滤器添加身份验证,特别是在下面的页面上找到的“基于模式的过滤器”的代码。
答案 3 :(得分:0)
Laravel 4 - 轻松添加管理控制器
这让我疯了很多年,但我把它解决了。
<强> routes.php文件强>
Route::resource('admin', 'Admin_HomeController@showIndex');
<强> /controllers/Admin/HomeController.php 强>
请注意,文件夹名称Admin必须为“A”
<?php
class Admin_HomeController extends Controller {
public function showIndex() {
return 'Yes it works!';
}
}
或者,您可以使用组方法
Route::group(array('prefix' => 'admin'), function() {
Route::get('/', 'Admin_HomeController@showIndex');
});
由于 丹尼尔