我有一组ID $bookingPaymentPending[attendee_id][program_id] =
array(2) { [416]=> array(2) { [0]=> int(2) [1]=> int(4) }
[417]=> array(2) { [0]=> int(2) [1]=> int(4) } }
我想获得attendee
及其programs
的关系模型集合。基本上我想访问$attendee->programs
我这样做....
foreach ($bookingsPaymentPending as $attendee_id => $program_ids)
{
$attendees[$attendee_id] = Attendee::find($attendee_id)->with(['scheduled_programs' => function($q) use ($program_ids)
{
$q->whereIn('id', $program_ids);
}]);
}
但是$attendees
是不对的,因为我不知道如何把它变成一个雄辩的模型。有人能告诉我如何正确地做到这一点吗?有一种简单有说服力的方法吗?或者是查询构建器的方法吗?
答案 0 :(得分:1)
这会给你预期的输出吗?
$attendees = Attendee::with('scheduled_programs')
->whereIn('id', array_keys($bookingPaymentPending))
->get();
foreach($attendees as $attendee){
var_dump($attendee->scheduled_programs);
}