所以这基本上是我到目前为止得到的 sql 模型:
这就是它如何看待我的用户控制器(stackoverflow 格式):
if (Auth::user()->is('admin'))
{
if (Auth::user()->can('delete'))
{
echo 'hurra!';
}
}
权限密钥可能看起来像这样
admin.delete 可能类似于 user.can.buy
现在我想知道它是否可以,我如何在方法中执行它:
public function is($roleName)
{
$role = $this->roles;
if ($role->name == $roleName)
{
return true;
}
return false;
}
我觉得这个不错
但
public function can($permissionKey)
{
$permissions = $this->roles->permissions()
->where('key', $permissionKey)
->count();
if ($permissions > 0)
{
return true;
}
return false;
}
对我来说看起来有点尴尬。这是我用雄辩的 orm 选择数据的正确方法吗?
提前致谢!