gpt4 book ai didi

laravel - 如何在laravel Blade View 中检查用户是否为管理员

转载 作者:行者123 更新时间:2023-12-04 16:27:08 25 4
gpt4 key购买 nike

我有

用户表如

+================+
|用户 |
+================+
|身份证 |
+--------------+
|名字 |
+--------------+
|姓氏 |
+--------------+
|电子邮件 |
+--------------+
|密码 |
+--------------+

和我的角色表

+================+
|角色 |
+================+
|身份证 |
+--------------+
|姓名 |
+--------------+

我的 role_user 表是

+==============+
| role_user |
+==============+
|用户 ID |
+------------+
| role_id |
+------------+

如何检查当前登录的用户是管理员还是普通用户?

最佳答案

您需要添加 roles您的关系User模型如下:

public function roles() 
{
return $this->belongsToMany(App\Role::class);
}

现在你需要创建 isAdmin用户喜欢这样:
public function isAdmin() 
{
return in_array(1, $this->roles()->pluck('role_id')->all());
}

1您输入了管理员角色的 ID。当然,它也可以用其他方式定义,但一切都取决于如何使用它。

也可以这样定义:
public function isAdmin() 
{
return $this->roles()->where('role_id', 1)->first();
}

现在在您的 Blade 中,您可以执行以下操作:
@if (auth()->check())
@if (auth()->user()->isAdmin())
Hello Admin
@else
Hello standard user
@endif
@endif

关于laravel - 如何在laravel Blade View 中检查用户是否为管理员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34680911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com