我有这个表:
Attendances
id | member_id
1 | 1
2 | 2
3 | 3
Members
id | name
1 | Joe
2 | Jane
3 | David
Positions
id | position_name
1 | art
2 | singer
3 | dancer
member_position
member_id | position_id
1 | 2
1 | 1
1 | 3
2 | 1
2 | 2
3 | 3
从出席表中,我如何选择所有出席的歌手使用 Laravel eloquent?
====编辑====
考勤模式:
public function member()
{
return $this->belongsTo('App\Member');
}
会员型号:
public function positions()
{
return $this->belongsToMany('App\Position');
}
职位模型:
public function members()
{
return $this->belongsToMany('App\Member');
}
您应该使用具有嵌套关系的 whereHas 方法。
$attendances = Attendance::with('member')
->whereHas('member.positions', function($query){
$query->where('id', 2);
})
->get();
foreach($attendances as $attendance){
echo $attendance->member->id;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句