Я думаю, @Tpojka прямо здесь.Если вы пытаетесь получить экземпляры Календаря, которые принадлежат к нужной Календарной группе, то заменить код должен выглядеть следующим образом:
$event = new Calendar();
$group = 1;
$event->orderBy('start', 'asc')
->whereHas('calendar_groups', function ($q) use ($group) {
//$q->wherePivot('calendar_groups_id', '=', $group);
$q->where('id', '=', $group);
})->with('calendar_groups')
->first();
Если я правильно читаю документацию, wherePivot()
следует использовать следующим образом:
$event = new Calendar();
$event->calendar_groups()->wherePivot('some_pivot_column',1)->get();
Но это вернет вам CalendarGroup
экземпляров.
Если вы захотите сделать это через Eloquent, но не пройдя весь путь до CalendarGroup
, тогда вывероятно, нужно создать модель (назовем ее CalendarCalendarGroupPivot
) для сводной таблицы и добавить еще одно отношение (hasMany('CalendarCalendarGroupPivot')
) к вашей Calendar
модели.