仅用于查看和进行更改的公共用户和管理员区别

时间:2017-02-20 07:06:33

标签: php laravel

我需要建立一个网站,在该网站中公共用户可以直接看到仪表板/主页,关于页面,联系页面但不能添加,编辑或删除帖子。这些优先权仅供管理员用户使用。他们需要登录,然后他们可以添加内容并进行修改。我在laravel做这个项目。提前谢谢

2 个答案:

答案 0 :(得分:0)

只需创建一个包含auth-middleware之外路径的主页 对于管理页面(仅限登录),只需将->middleware('auth');放在路线的末尾

Route::get('profile', function () {
    // Only authenticated users may enter...
})->middleware('auth');

或者你可以放一个小组路线

Route::get('/', 'IndexController@Index'); //url == http://www.example.com
Route::get('/contact', 'IndexController@Contact'); //url == http://www.example.com/contact
Route::auth(); //default laravel auth route like login, register, reset pass (make sure to disable register controller in app/Http/Controllers/Auth)
Route::group(['middlewareGroups' => ['web'], 'middleware' => ['auth']], function () { 
    //your route for authentication only 
    Route::get('/admin/edit/', 'AdminController@Edit'); //url == http://www.example.com/admin/edit/
    Route::get('/admin/list/', 'AdminController@List'); //url == http://www.example.com/admin/list/
});

答案 1 :(得分:0)

您可能需要考虑使用Laravel Authorization功能来构建您的权限。

https://laravel.com/docs/5.4/authorization

使用GatesPolicies,您只能在该用户分配了正确的策略时允许采取某些操作。

如何为用户分配策略,但我会在is_admin表上建议一个基本的User布尔值,或者创建某种user_roles表。