我正在使用Eloquent进行数据库处理,当我使用更新方法created_at
更新记录时更改时间戳如何防止这种情况发生?
$post = Post::update([
'name' => $name
]);
updated_at
时间戳工作正常
答案 0 :(得分:2)
如果您的模型中没有任何自定义设置。您可以像这样更新记录:
$id = 5; // here put id of record you want to update
$post = Post::findOrFail($id);
$post->name = $name;
$post->save();
仅使用此代码{} {}应更新name
时间戳(而不是updated_at
)。如果created_at
也已更新,则表示您可能有一些自定义模型设置或:
created_at
的数据库触发器created_at
的事件created_at
表中的created_at
字段未定义为posts
- 这样每当您更新记录时,CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
也会更新为当前日期时间您还应该确保您的created_at
模型不具备以下内容:
Post
如果还可以解释更新记录时更改const UPDATED_AT = 'created_at';
的原因。