更新复选框形式发送的记录的最佳方法是什么。如何知道哪一个未被选中。
我的算法未设置所有值,然后再次检查并从请求中检查ID。此外,由于所有值每一次都会更新,因此会引起时间戳问题。
public function plansUpdate(Request $request){
//set all plans as not default to handle unchecked
$plans = $this->planService->getAllPlans()->pluck('id');
PlanModel::whereIn('id', $plans)->update(['is_default' => false]);
//set checked plans as default
$defaultPlans = $request->get('default-plans');
PlanModel::whereIn('id', $defaultPlans)->update(['is_default' => true]);
return redirect()->back();
}
我想执行更好的解决方案,其中仅在表单中更改的值在后端被“触摸”。
梵蒂冈之花