如何使用户和角色关系在laravel 5? [英] How to make user, and roles relationship in laravel 5?
本文介绍了如何使用户和角色关系在laravel 5?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有两张表:
用户 - >
id:
name:
role_id: - > refernces('id') - > on('roles');
角色 - >
id:
role_name:
访问:
我正在尝试
我的用户模型有:
public function role(){
return $ this-> belongsTo('App \Role');
}
我的角色模型有:
public function user(){
return $ this-> hasMany('App\User');
}
当我尝试执行以下操作:
$ user = User :: find(1);
$ details = [
'name'=> $ user-> first_name,
'role'=> $ user-> role-> role_name
];
我收到错误:
尝试获取非对象的属性
我的角色表包含访问列包含不同路由的权限数组。所以我的用户只有一个角色。虽然角色可以有多个用户。
如何做?
解决方案
我遇到问题,我在用户表中有一个角色列,所以当我在做
$ user-> role-> role_name
/ pre>
它正在获取
角色
列而不是关系。I have two tables :
User -> id : name : role_id : ->refernces('id')->on('roles'); Roles -> id : role_name : access :
I am trying to access roles details from user.
My user model has :
public function role(){ return $this->belongsTo('App\Role'); }
My role model has :
public function user(){ return $this->hasMany('App\User'); }
When I try to do following :
$user = User::find(1); $details = [ 'name' => $user->first_name, 'role' => $user->role->role_name ];
I get error :
Trying to get property of non-object
My roles table contains access columns containing array of permissions to different routes. So my user will have only one role. While a role can have multiple users. How to do that?
解决方案I got the problem, i was having a role column in user table, so when i was doing
$user->role->role_name
it was fetching
role
column instead of relationship.这篇关于如何使用户和角色关系在laravel 5?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文