У меня есть 3 таблицы: users
, categories
и categories_users
.
users table
- id
- name
- email
- etc...
categories table
- id
- name
- type
- etc...
categories_users table
- id
- categories_id
- users_id
- demo1
- demo2
- demo3
demo2
вроде подкатегории
Мне нужно создать массив с (подкатегориями demo2) в качестве ключей и потенциальными пользователями в качестве значений в соответствующей (подкатегории demo2), чтобы я мог просматривать каждую категорию и получать ее пользователей.
Кто-нибудь знает, как добиться этого с помощью laravel?
Я пробовал следующее
$category = Category::where('id', 12)->first();
$users = $category->users->sortBy('pivot.demo2');
$users_by_category = [];
$the_users = [];
foreach($users ?? [] as $k => $v) {
if ($k == 0 OR $v->pivot->demo2 == $users[$k -1]->pivot->demo2 ) {
$the_users[] = $v;
$users_by_category[$v->pivot->demo2] = $the_users;
} elseif ($v->pivot->demo2 != $users[$k -1]->pivot->demo2 ) {
$users_by_category[$v->pivot->demo2] = $the_users;
}
}