Я использовал Eloquent hasOne для создания отношений между пользователем и таблицей users_permissions, когда пользователь регистрируется на веб-сайте и группирует пользователя в соответствии с введенным им в форму способом, и он работал отлично, но тот же метод, я думаю, он не распознает, когда тот же пользователь подписывается на веб-сайте.Laravel Eloquent hasOne. Пытаться получить свойство не-объекта
Код ниже работы, когда пользователь входа до сайта
$user->permissions()->create(UserPermission::user_group($nature_of_entity));
Но когда я хочу использовать метод ниже, я получаю сообщение об ошибкепытается получить свойство не -объект.
public function hasPermission($permission) {
return (bool) $this->permissions->$permission;
}
public function permissions() {
return $this->hasOne('App\User\UserPermission', 'user_id');
}
В пользовательской базе данных таблицу с именем users_permissions, который имеет (идентификатор, user_id, is_group_one, is_group_two, is_group_three)
Я пытаюсь видеть пользователь в какой группе, как:
if($app->user->hasPermission('is_group_one')){
echo 'Group One';
}
Но я получаю ошибку Пытается получить свойство не-объекта. Я бы очень признателен, если кто-то может помочь, и если это способы, я могу это сделать и использовать методы Laravel Eloquent Relationships. Надеюсь, ты поймешь, о чем я.
Что вы храните именно в базе данных разрешений? – PeterPan666