我有很多关系。
刀片代码中的我使用actionID[]
然后我像这样插入它们:
$detailsAttribute->actions()->sync(Input::get('action_id'));
现在我想更新该模型。
我使用了同样的陈述
$detailsAttribute->actions()->sync(Input::get('action_id'));
它会创建新操作但不删除旧操作。换句话说,当我编辑模型$detailsAttribute
时,我会删除较旧的操作,并选择许多新的。
我的问题是如何在考虑删除未选择的操作的情况下更新模型?
答案 0 :(得分:1)
sync()
方法会删除数据透视表中的所有项目(如果它们不存在)
Input::get('action_id') array
。如果它们未被删除,则意味着您也在新数组中传递旧数据。 var_dump你的输入,看看你得到了什么样的数组。