laravel Add [xxx字段] to fillable property to allow mass assignment on [App\Http\Models\xxx]

以上错误源于laravel Eloquent ORM 模型中fillable 与 guarded属性的设置。

解决方法:在对应的model里面添加对应的字段即可

$fillable就像是可以被赋值属性的“白名单”,还可以选择使用$guarded。$guarded属性包含你不想被赋值的属性数组。所以不被包含在其中的属性都是可以被赋值的,因此,$guarded方法就像“黑名单”。当然,你只能同时使用其中一个,而不是一起使用。

$fillable 和 $guarded 两个属性是用来控制批量赋值的,批量赋值是什么意思?并不是数据填充,这个批量二字不知道是不是中英文翻译的误会,理解起来还是很模棱两可,直接忽略吧,只要记住下面的要点就行。

$fillable属性里面的字段是可以赋值的,其他的所有属性不能被赋值

$guarded属性里面的字段是不可以赋值,其他的所有属性都能被赋值

所有$guarded相对来说在模型中出现频率比$fillable高,如果你想让所有属性都可以批量赋值, 你可以将$guarded定义成一个空数组:protected $guarded = [];

需要注意的是,fillable 与 guarded 只限制了 create 方法,而不会限制 save。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沐月浅歌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值