Область запроса Laravel с Pivot

Packy спросил: 03 февраля 2018 в 10:04 в: laravel

У меня есть область запроса, которая работает прямо сейчас, чтобы получить нужную запись, которую я хочу, но мне нужно также получить информацию о своде. Например:

Мой запрос:

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 для этой записи?

0 ответов