Я пытаюсь объединить 4 модели, чтобы получить сводный отчет. Это мои таблицы.
user
-id
-name
-country_id
country
-id
-name
invoice
-id
-user_id
-type_id
type
-id
-name
Я хочу подсчитать детали счета для каждого типа в зависимости от страны. Это что-то вроде этого.
country | type_name_1 | type_name_2 | type_name_2
America | 10 | 2 | 4
Canada | 62 | 0 | 35
China | 23 | 9 | 5
Я попробовал следующий запрос, но он не дает того ответа, который я хочу выше.
\App\Invoice::all()->groupBy(function($s){
return $s->user->country->name;
})->groupBy(function($s){
return $s->type->count();
})
Ошибка: исключение с сообщением 'Свойство [тип] не существует в этом
экземпляр коллекции. '
Может кто-нибудь дать мне указатель здесь?