在 laravel 4 中从多对多模型中删除重复


Remove reationship from many-to-many models in laravel 4

我尝试了以下方法:

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

但是这会从数据库中删除记录,我怎么能只删除关系而不从表中删除?而且也不必弄乱数据透视表,因为如果需要,我为什么要使用框架......

如果我没猜错的话,detach()就是你要找的:

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

这将仅删除与数据透视表中one_model$idtwo_model$two_id的关系。

单击此处了解更多详情。