我有这个查询
SELECT * FROM users AS u INNER JOIN branches AS b ON u.branch_id = b.branch_id
这意味着每个人user
都会关联branch
,但只有一个branch
可以与多个user
关联。
任何人都可以帮我定义这种关系吗?
我做了这个
我在用户模型中写了这个关系
public function branch()
{
return $this->belongsTo('App\Branch');
}
它返回null。
答案 0 :(得分:1)
你应该试试这个:
public function branch()
{
return $this->belongsTo('App\Branch','branch_id');
}
希望这对你有用!!!
答案 1 :(得分:1)
你的问题似乎与一对多关系相反,即多对一。
在这种情况下,在您的情况下,许多用户属于一个分支。因此,您可以在User
模型中将多对一关系定义为:
public function branch()
{
return $this->belongsTo('App\Branch','branch_id');
}
现在,您可以访问此类用户的分支:
$user = User::find($id);
$branch = $user->branch;
希望你明白。