У меня есть следующие модели:
- Пользователь
- Группа пользователей
- Элемент
Теперь у каждого пользователя есть belongsToMany
отношение к Item
с осью:
public function items()
{
return $this->belongsToMany(Item::class)
->withPivot('value');
}
Это структура item
:
Item
Пример
User
- имя: Тим
- элементы:
- название: автомобиль
- значение (ось): 2
Теперь становится сложно: я хотел бы использовать User
также в модели UserGroup
- и у каждого User
должно быть много Item
с новой сводной таблицей, этоне совпадает с сводной таблицей, Item
имеет, когда это сводка User
.
Пример
UserGroup
- имя: Party-Group
- пользователи:
- имя: Тим
- элементы:
- название: автомобиль
- значение (круг): 3
Мой подход
Поэтому я думаю, что единственным возможным решением было бы создание чего-то вроде новой модели под названием UserGroupUser
(расширенный от User
) с отношением к UserGroupUserItems
(расширенныйот Item
).
Но может быть, есть более разумный способ сделать это?