Laravel使用Route :: resource生成路由需要添加前缀/ admin /

时间:2016-05-12 04:10:49

标签: php laravel url routes admin

例如,我有一个管理页面管理书籍的路线,路线设置如下:

self.feedSource.userInteractionEnabled = true
let feedSourceTapGesture = UITapGestureRecognizer(target: self, action: Selector("openLinkFromFeedSource:"))
self.feedSource.addGestureRecognizer(feedSourceTapGesture)


func openLinkFromFeedSource(sender: UITapGestureRecognizer) {
  let label = sender.view

    print("tapped")
}

它生成了很少的插入/更新/删除等路由......自动

Route::resource('books','Admin\BookController');

问题是,这是管理页面,我希望链接是

/books/create
/books/1/edit

如何将资源特定为管理员资源?它自动有/ admin / Thanks前缀

更新:

enter image description here

enter image description here

3 个答案:

答案 0 :(得分:4)

如果您需要多条路线的前缀,则应使用route group

Route::group(['prefix' => 'admin'], function()
{
    Route::resource('books','Admin\BookController');
});

或者,如果您只需要使用一个控制器,那么您可以这样做:

Route::resource('/admin/books','Admin\BookController');

答案 1 :(得分:2)

route更改为

Route::resource('admin/books','Admin\BookController');

答案 2 :(得分:0)

只是添加到Alexey的答案。我也在组中使用Namespace。以下是示例。

Route::group([
    'prefix'     => 'admin',
    'namespace'  => 'Admin',
    'middleware' => 'admin.routeNeedsPermission:view-admin-management',
], function() { 
       Route::resource('books','BookController');
});

通过这种方式,您无需在所有路线中编写管理员。