【发布时间】:2015-03-01 00:13:17
【问题描述】:
我设置了我的 laravel 模型保护数组属性,现在我当然不能设置了
Model::create(['gaurded_field' => 'value']);
但是我怎样才能安全地插入它,我想到的唯一选择是先创建,然后执行:
$model_object = Model::create(['other_attributes' => 'other_values']);
$model_object->gaurded_field = 'value';
$model_object->save();
但这只需要 2 个数据库查询,1 个插入 1 个更新,我可以在 1 个查询中设置它们吗?
【问题讨论】:
-
请解释为什么在
Model上设置$fillable后不能做Model::create(['field' => 'value']);? -
@user2094178 如果您设置了可填充/受保护的属性,则无法将它们发送到 create 方法...因为您首先需要保护它们不被用户输入保存。跨度>
标签: php laravel eloquent models laravel-5