【发布时间】:2020-05-07 17:44:40
【问题描述】:
所以基本上,为了方便起见,我使用批量分配。但是,我有一个名为“userid”的受保护字段。我已将单独的代码插入此字段,但由于某种原因我仍然收到错误:SQLSTATE[HY000]: General error: 1364 Field 'userid' doesn't have a default value
代码:
$apply = Apply::create(
$request->all()
);
$apply->userid = Auth::user()->id;
$apply->save();
return redirect()->route('apply');
型号:
protected $guarded = ['userid'];
谢谢。
编辑: 还没有解决,还有其他解决办法吗?
【问题讨论】:
-
为什么要保护字段?你没有实现一个setter吗?也许是一个范围?
-
不是吗?我还没有将它添加为一个字段,所以这是设置它的唯一方法.. 对吗?
-
使用
create将尝试在数据库中存储一条记录。您已在迁移中将userid列定义为不为空,因此对create的调用将失败,因为$request->all()不包含userid。 -
谢谢,那我该如何解决呢?