Laravel 5
Сводная (pivot) таблица: attach detach несколько значений
Рассмотрим случай, когда сводная таблица с дополнительным столбцом position.
Связи в модели:
1 2 3 4 5 6 7 |
public function cars() { return $this->belongsToMany(Car::class, 'user_cars', 'user_id', 'car_id')->withPivot('position')->orderBy('position'); } |
Тогда удалить все записи из сводной таблицы для данного пользователя:
1 |
$user->cars()->detach(); |
Добавить несколько строк в сводную таблицу для данного пользователя:
1 2 3 4 5 |
foreach($cars_ids as $key => $id) { $a[$id] = ['position' => $key+1]; } $user->cars()->attach($a); |