Задача следующая - я делаю выборку из модели
$items = \App\Item::whereIn('id',[1,2,3,4]);
у каждого item
есть отношение
public function relations()
{
return $this->hasMany(\App\Model\Relation::class);
}
и
public function user()
{
return $this->belongsTo(\App\User::class,'user_id','id');
}
Так вот, в мне нужно в любом виде (коллекция, массив и т.д.) получить количесво существующий отношений relations
для каждого user
.
У самого пока вариантов нет.
Тугодумы прости Господи. Пришлось воспользоваться обычным sql, а не заморачиваться с этим laravelем
$relations_count = \DB::table('items')
->leftJoin('relations', function($join)
{
$join->on('items.id', '=', 'relations.item_id');
$join->on('items.user_id','=','relations.user_id');
})
->select('items.id', \DB::raw('COUNT(relations.id) as relations_count'))
->whereIn('items.id', [1,2,3,4])
->groupBy('items.id')
->get();
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Почему выдаёт ошибку Parse error: syntax error, unexpected 'if' (T_IF)?