我创建了一个返回布尔值的getIsAdminAttribute
,如果我使用Auth::user()
它会起作用,但是,现在我需要将User对象传递给此方法,以便我可以检查给定用户是否为admin。
class User extends Authenticatable {
public function getIsAdminAttribute()
{
if (Admin::where('user_id', $user->id)->first()) {
return true;
} else {
return false;
}
}
}
然而,这不起作用。如何将$user
传递给此方法,以便我可以将其称为:
$user->is_admin
并返回布尔值。
如果我试试这个,它会返回null。
getIsAdminAttribute($user) {
dd($user);
}
答案 0 :(得分:1)
您已经在User
模型中,因此您可以使用$this
来访问当前对象的属性。
public function getIsAdminAttribute()
{
return Admin::where('user_id', $this->id)->count() > 0;
}