例如
protected $fillable = ['name'];
protected $guarded = ['price'];
定义了 name 字段可以写入/修改,而 price 字段不可以。
需要注意的是,fillable 与 guarded 只限制了 create 方法,而不会限制 save。
我觉得 Laravel 这样设计的原因是,create 通常是使用 request 中的所有请求参数来创建对象,而 save 则是一个字段一个字段的手动赋值,所以 create 有可能会恶意加入不应该插入的字段,例如 is_admin。基于此,create 还是需要有 fillable, guarded 来过滤一层比较安全。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/113051.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...