【发布时间】:2017-12-31 09:44:01
【问题描述】:
我正在尝试将用户与管理员分开,并禁止用户访问管理员部分。
我的目录结构是
resources/
-views/
--site/
---users/
---admin/
在web.php我已经添加了这个
Route::get ('/', ['uses' => 'HomeController@index']);
Route::auth();
Route::group(['middleware' => ['auth'], 'namespace' => 'users', 'prefix' => 'site/users'], function() {
// users routes
});
Route::group(['middleware' => ['auth'], 'namespace' => 'admin', 'prefix' => 'site/admin'], function() {
// admin routes
Route::get ('/admin', ['uses' => 'AdminController@index', 'before' => 'admin']);
});
当我以管理员身份登录并尝试打开 http://example.com/admin 时,我得到了
(1/1) NotFoundHttpException
用户也是如此。
我在数据库is_admin 中有列,我在登录期间检查并存储在会话中。
【问题讨论】:
-
我认为这会有所帮助 'site/admin' => 'admin' Route::get ('/admin' => Route::get ('/'
-
对不起,我听不懂。
-
试试这个:Route::group(['middleware' => ['auth'], 'namespace' => 'admin', 'prefix' => 'admin'], function() { // 管理路由 Route::get ('/', ['uses' => 'AdminController@index', 'before' => 'admin']); });
-
感谢@Bas,这真的很有效!
-
如果我还有其他想要以用户身份访问的目录怎么办?如何在
prefix中添加多个目录?赞这个Route::get ('/cart/order', ['uses' => 'CartController@order', 'before' => 'auth|csrf']);这条路线我现在可以访问了
标签: laravel laravel-5 laravel-routing