我正在使用Laravel&口才。
我有两张桌子。
用户
id, username, password, rankId
等级
id, rankName
这两者之间的关系是什么?而且,我怎样才能使用Laravel Eloquent模型显示这两个模型之间的关系?任何帮助都将受到高度赞赏。
我想到了hasOne,但是,它需要第二个表(rank)拥有users
表的外键。我将如何在Laravel中定义这种关系?
答案 0 :(得分:1)
如果您使用的是用户模型,则属于关系,例如
public function rank()
{
return return $this->belongsTo('App\Rank', 'rankId', 'id');
}
现在,如果您从用户模型查询,您可以获得这样的排名信息,
$user = User::find(1);
var_dump($user->rank->rankName);
现在,如果您使用的是Rank模型,并希望让所有用户都达到特定级别,那么您的关系会有很多,就像这样
public function users()
{
return $this->hasMany('App\User', 'rankId', 'id');
}
现在,如果您查询排名,您可以通过这种方式获得用户
$ranks = Rank::find(1);
foreach($ranks->users as $user){
var_dump($user->username);
}
现在可能一切都很清楚了