首页 >数据库 >mysql教程 >为什么在 Laravel 5.4 中创建匹配对象时出现'字段没有默认值”错误?

为什么在 Laravel 5.4 中创建匹配对象时出现'字段没有默认值”错误?

Barbara Streisand
Barbara Streisand原创
2024-11-10 12:56:02899浏览

Why Am I Getting the

Laravel 5.4:错误“字段没有默认值”

问题:

尝试通过 Deal 对象创建新的 Match 对象时,您收到错误“字段 'user_id' 没有默认值”。您的 Match 类将 $guarded 数组设置为空数组,但这并不能解决问题。

解决方案:

该错误表明数据库表匹配需要 user_id 列的非空值。要解决此问题,请更新您的 Match 类以指定可填写字段而不是受保护字段:

protected $fillable = ['user_id', 'deal_id'];

说明:

在 Laravel 中,默认情况下,所有字段都是受到保护,这意味着它们不能被大规模分配。这是为了防止安全漏洞。通过定义可填充数组,您可以指定可以批量分配哪些字段。在这种情况下,user_id 和 deal_id 字段是创建新 Match 对象时唯一可以设置的字段。

通过使用可填充数组而不是受保护数组,您可以设置 user_id 字段创建新匹配时。这将解决错误并允许您成功创建新匹配。

以上是为什么在 Laravel 5.4 中创建匹配对象时出现'字段没有默认值”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn