表1(用户):
id username password role created_at updated_at
1 jhon yz 1 sometime sometime
表2(角色):
id role created_at updated_at
1 employee sometime sometime
我想要什么
id username password role created_at updated_at
1 jhon yz employee sometime sometime
用户模型:
class User extends Eloquent implements UserInterface, RemindableInterface {
public function role()
{
return $this->hasOne('role', 'id', 'role');
}
protected $table = 'users';
protected $hidden = array('password', 'remember_token');
}
角色模型:
class Role extends Eloquent {
protected $table = 'roles';
}
如何在视图中获取角色名称?我的关系正确吗
一个角色可以被许多用户使用,例如:
user1可以是管理员user2也可以是管理员user3是经理user4也是管理员
如果是这样的话,。。
用户型号:
class User extends Eloquent implements UserInterface, RemindableInterface {
protected $table = 'users';
protected $hidden = array('password', 'remember_token');
public function role()
{
return $this->belongsTo('Role');
}
}
角色模型:
class Role extends Eloquent {
protected $table = 'roles';
public function users()
{
return $this->hasMany('User');
}
}
然后使用:
User::with('role')->whereRole(1)->get(); // assuming that 1 = employee; this is eager loading
这将产生类似于:
[
new User([
'id' => 1,
'username' => 'blahblah',
'password' => 'pass',
'role' => 1,
'created_at' => '0000-00-00',
'updated_at' => '0000-00-00',
'role' => new Role([
'id' => 1,
'role' => 'employee',
'created_at' => '0000-00-00',
'updated_at' => '0000-00-00'
])
])
]