我在现有的表中添加了两个新的列(relationship和guardian_no)。表格已经有 100多个记录。我还具有编辑界面,可以在其中编辑现有记录。在 edit 表单中,我还有这些新列的字段。现在,我想使用 Edit Form 一张一张更新这些新添加的列,用于所有100多个记录。但是 updateOrCreate 函数仅更新旧列,而不更新新列。
我正在以这种方式更新新列。
$user_detail->relationship = $request['relationship'];
$user_detail->guardian_no = $request['guardian_no'];
return response()->json($user_detail);
在分配上述值后返回模型时。它们可以正确打印,有值,但是当我以这种方式更新模型时。
$ud= UserDetail::updateOrCreate([
'user_id' => $user->id,
], $user_detail->attributesToArray());
return response()->json($ud);
关系和 guardian_no 现在为空。其他值正在正确更新。我做错了还是错过了一步?
答案 0 :(得分:1)
您需要将表中的新字段添加到$ fillable数组中。
答案 1 :(得分:-1)
您必须将新列添加到可填充数组,以便在模型上找到它