在laravel 4中删除多对多模型的reationship

时间:2013-09-11 02:19:00

标签: php laravel eloquent

我尝试了以下内容:

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

但是从数据库中删除了记录,如何在不删除表的情况下删除关系呢?而且不必弄​​乱数据透视表,因为如果需要,为什么我甚至使用框架...

1 个答案:

答案 0 :(得分:32)

如果我找到你,detach()就是你要找的东西:

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

这会在您的数据透视表中仅删除与one_model的表格$idtwo_model的表格$two_id的关系。

Click here for more details