Я подсчитать, сколько регистраций существует от одной нации. До сих пор я пришел со следующим решением: Метод внутри контроллера:
class Camp extends Model // ...
{
protected $with = ['registrations_nation_count',...];
// ...
public function registrations_nation_count()
{
return $this->hasMany(CampRegistration::class)
->select(['camp_id','nation',DB::raw('COUNT(*) as count')])
->groupBy('nation');
}
}
Это генерирует следующий вывод:
"registrations_nation_count": [
{
"camp_id": 1,
"nation": "en",
"count": 2
},
{
"camp_id": 1,
"nation": "fr",
"count": 1
}
]
Теперь я хотел бы удалить столбец camp_id из выход. Я уже пытался просто удалить его из выбора, но это не приводит к выводу вообще. Есть ли способ скрыть это?
База данных:
+-------+--------------------+
| camps | camp_registrations |
+-------+--------------------+
| id | id |
| ... | camp_id |
| | nation |
| | ... |
+-------+--------------------+