php - 仅允许管理员查看 Laravel 中的页面

标签 php laravel

我正在尝试仅允许管理员用户能够查看我的 laravel 项目中导航栏的某些内容。我有一个 users 表,其中包含一个由“admin”和“user”值组成的角色列,我在我的中间件中使用它来允许管理员用户访问管理面板以进行 CRUD 操作。

我试过:

@if(auth()->check())
 @if(Auth::user()->get(array('users.role')) == 'admin')

  'THIS IS WHAT I WANT ONLY ADMIN USERS TO SEE!'

 @endif
@endif

然而,当登录到“管理员”用户时,我仍然看不到仅限管理员的内容。我是这个框架的新手,但如果有人有任何建议,我将不胜感激!

谢谢,

山姆

最佳答案

试试这个:

@if (Auth::user() && Auth::user()->role == 'admin')
    'THIS IS WHAT I WANT ONLY ADMIN USERS TO SEE!'
@endif

Auth::user()Auth::check() 相同,它将检查用户是否已通过身份验证。只有当用户通过身份验证时,Laravel 才会运行 Auth::user()->role == 'admin' 来检查用户是否是管理员。

关于php - 仅允许管理员查看 Laravel 中的页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39140439/

相关文章:

php - Laravel 相交不会得到输入

php preg_match 以关键字开头

laravel - Axios POST 到 Laravel API 会导致 419 错误,但在 postman 中工作正常

java - Quercus (Java) 比 native PHP 快吗?

php - 可以从 Youtube 视频中捕获静止帧吗?

php - 在 PHP 中创建多语言网页

Laravel 集合 : return only relationship and key

laravel - Laravel 验证规则可以检查模型记录是否存在?

php - 各种 Laravel Controller 方法之间的通用逻辑

php - Laravel:如何将此查询转换回 Eloquent 查询?