我有一个带有许多可填写字段的模型
class Customer extends Model
{
protected $fillable = [...,'my_field'...]
}
我还有一个控制器可以使用以下方法更新此表:
public function update(Request $request, Customer $customer)
{
error_log($request->all());
$customer->update($request->all());
return response()->json($customer, 200);
}
如果我发送的请求正文包含空字符串:
{
...
"my_field": "",
...
}
该字段将被 $request->all() 方法删除,从而生成如下数组:
Array
(
...
[my_field] =>
...
)
然后创建此错误:
Illuminate\Database\QueryException:SQLSTATE [23000]:完整性约束违规:1048 列“my_field”不能为空
但它不应该为空,我希望它是一个空字符串。处理这个问题的标准方法是什么?