У меня есть область запроса, которая работает прямо сейчас, получая нужную запись, которую я хочу, но мне также нужно получить сводную информацию. Например:
Мой запрос:
public function scopeProgramDate($query, $program, $date)
{
return $query->whereHas('weeks', function ($q) use( $program, $date ){
$q->where('date', $date);
$q->where('program', $program);
});
}
Поэтому я могу назвать его как Workout::programdate( 'skunks', Carbon::today() )->first();
, и он вернет правильный workout
. Но я хотел бы, чтобы он включал сводную информацию для записи в сводной таблице (date, program, warmup
);
Если я назову это так Workout::programdate( 'skunks', Carbon::today() )->with('weeks')->first();
, это даст мне все недели, связанные с тренировкой, которые я не могу использовать, так как тренировка может быть в один и тот же день с разными warmpup
и program
есть ли способ сделать так:
public function scopeProgramDate($query, $program, $date)
{
return $query->whereHas('weeks', function ($q) use( $program, $date ){
$q->where('date', $date);
$q->where('program', $program);
})->withPivot( ['program', 'warmup', 'date'] );
}
поэтому я могу найти workout
в week_workout
, где совпадают date
и program
. Затем вернуть workout
, workout.pivot.date
, workout.pivot.program
, workout.pivot.warmup
для этой записи?