php - Laravel 中的表格摄入和质量分配
问题描述
我正在开发一个涉及在数据库中存储大量数据的 Laravel Web 应用程序 到目前为止,我一直在使用常规的 Laravel Store,部分原因是我更喜欢这种方式,部分原因是我将来可能需要使用模型事件(在批量分配的情况下,模型事件不会触发):
$product = new Product;
$product->name = "EXT";
// MANY MORE FIELDS
$product->save();
但是我在某处读到,这样做不是一个好习惯,而是使用质量分配,因为这样更快更有效。
那是对的吗?我应该继续使用我正在使用的方法还是应该切换到批量分配/更新?
PS:我知道 Mass Assignment 的安全风险可以通过 $gaurded 和 $fillable 来避免。
解决方案
在模型中,只需设置protected $fillable=[];
并protected $guarded=[];
清空数组并使用您想要使用的任何内容,无论是批量分配还是雄辩或查询构建器。
推荐阅读
- javascript - 如何使用 async/await 处理 Firebase Firestore 错误
- julia - 使用 UInt128 数据类型时 Julia 中的大整数除法错误
- c++ - 仍然无法获得有关 IRIW 方案的真正根本原因解释
- apache-spark - Parquet 中的列索引
- django - 如何为表格可视化添加折线图并在 Django 项目中添加下拉菜单?
- mongodb - 如何在Mongoose MongoDb中获取一个部门的所有学生
- android - 在房间查询中获取可变参数大小
- flutter - 对 TabBar 使用 JSON 结果
- android - 状态栏突然改变大小
- java - 连接到 AxonServer 节点 [192.168.99.100:8124] 失败:内部:恐慌!这是一个错误