@knowledge

Какие данные записывать в таблицы при связи многие ко многим в eloquent?

Использую ORM Eloquent (без laravel)
Тривиальная задача, пользователи и их роли

Создал таблицы users (модель User), roles (модель Role) и role_user (модель нужна?)
далее когда я присваиваю модели User роль, я должен использовать конструкция $user->roles = 'ROLE_USER' или id роли из таблицы roles?
А если много ролей, будет массив?
И в таблице role_user автоматически записи вносятся?

как правильно все это сделать?
  • Вопрос задан
  • 145 просмотров
Решения вопроса 1
rammtw
@rammtw
Press CTRL+S to save project
1. Да, нужно создать таблицу users_roles
2. Создать связь belongsToMany в моделях users и roles
3. Сохранять можно через
$user->roles()->sync([1,2,3])

А вообще ссылка на доку
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы