如何解决Laravel - SuperAdmin 看不到其他角色
我在我的用户模型中添加了这个:
private $rank;
public function isSuperAdmin(): bool {
if ($this->rank >= 3) {
return true;
}
return false;
}
public function isAdmin(): bool
{
if ($this->rank == 2 || $this->isSuperAdmin()) {
return true;
}
return false;
}
public function isCustomer(): bool {
if ($this->rank == 1|| ($this->isSuperAdmin() || $this->isAdmin())) {
return true;
}
return false;
}
我的等级为 '3',等于 isSuperAdmin()
函数。因此,当我执行以下操作时:
if (Auth::user()->isSuperAdmin())
这按预期工作。但是,当我作为超级管理员尝试执行以下操作时:
if (Auth::user()->isAdmin())
它根本不起作用,当我拥有 SuperAdmin 角色时,Laravel 不会在我的视图中显示 @if(Auth::user()->isAdmin())
之间的任何内容。这对所有角色都是一样的,我不明白为什么..我做错了什么?
附言。我还在 isAdmin
函数中尝试了以下操作,但也不起作用:
if ($this->rank >= 2 || $this->isSuperAdmin()) {
解决方法
在我删除 private $rank
后,一切都按预期工作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。