栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Laravel中的“质量分配”是什么意思?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Laravel中的“质量分配”是什么意思?

质量分配是将数组发送到模型创建时,基本上是一次在模型上设置一堆字段,而不是一个接一个地设置,例如:

$user = new User(request()->all());

(这不是在模型上分别显式设置每个值。)

您可以

fillable
用来保护您希望此字段实际允许更新的字段。

您还可以通过执行以下操作来阻止所有字段可批量分配:

protected $guarded = ['*'];

假设在您的用户表中,您有一个字段,

user_type
并且可以包含user / admin的值

显然,您不希望用户能够更新此值。从理论上讲,如果您使用上述代码,则有人可以在表单中注入新字段

user_type
并与其他表单数据一起发送“
admin”,并轻松地将其帐户切换为admin帐户……这是一个坏消息。

通过添加:

$fillable = ['name', 'password', 'email'];

您要确保只有这些值可以使用更新

mass assignment

为了能够更新

user_type
值,您需要在模型上显式设置并保存它,如下所示:

$user->user_type = 'admin';$user->save();


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/382353.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号