我尝试了以下内容:
$one = OneModel::findOrFail($id);
$two = $one->two_model()->findOrFail($two_id);
$two->delete();
但是从数据库中删除了记录,如何在不删除表的情况下删除关系呢?而且不必弄乱数据透视表,因为如果需要,为什么我甚至使用框架...
答案 0 :(得分:32)
如果我找到你,detach()
就是你要找的东西:
$one = OneModel::findOrFail($id);
$one->two_model()->detach($two_id);
这会在您的数据透视表中仅删除与one_model
的表格$id
和two_model
的表格$two_id
的关系。