Удалите отношения из моделей "многие-ко-многим" в laravel 4

Я попробовал следующее:

$one = OneModel::findOrFail($id);
$two = $one->two_model()->findOrFail($two_id);
$two->delete();

Но это удаляет запись из базы данных, как я могу просто удалить отношения без удаления из таблицы? А также не нужно возиться со сводной таблицей, потому что, если это необходимо, почему я даже использую фреймворк...

Ответ 1

Если вы правильно поняли, detach() - это то, что вы ищете:

$one = OneModel::findOrFail($id);
$one->two_model()->detach($two_id);

В вашей сводной таблице будет удалено только отношение с таблицей one_model table $id и two_model table $two_id.

Нажмите здесь для получения более подробной информации.

Изменить: обновлена ​​ссылка, чтобы перейти на новую правильную страницу.