【发布时间】:2020-10-15 14:25:37
【问题描述】:
我已经花了好几个小时试图找出这行代码的问题:
ContentSetting::updateOrCreate(
['content_id' => $this->id, 'key' => 'max_width'],
['value' => $value]
);
它应该检查我的 content_settings 表中是否存在具有特定内容 id 和键“max_width”的行,如果是则更新它,如果不创建它。它用于模型修改器,因此是 $this。
无论如何,无论我尝试输入什么值,这总是会导致执行此 mysql 查询(仅使用不同的时间戳):
insert into `content_settings` (`content_id`, `updated_at`, `created_at`) values (2, '2020-10-15 14:07:00', '2020-10-15 14:07:00')
...只需使用空键和值创建新行。任何人都可以发现错误吗?或者这是某个地方的错误? “key”是保留字的东西?
【问题讨论】:
-
ContentSetting 模型中的 $fillable 怎么样?是否包含键和值?
-
噢!我知道这将是非常明显的事情。当然!非常感谢!
-
不客气,我将添加我的答案,以便我们可以关闭此问题
标签: laravel eloquent laravel-8