gpt4 book ai didi

ruby-on-rails - 如何确定after_save中的记录是刚刚创建还是更新

转载 作者:行者123 更新时间:2023-12-03 04:56:59 27 4
gpt4 key购买 nike

#new_record?函数确定记录是否已保存。但在 after_save Hook 中它始终为 false。有没有办法判断该记录是新创建的记录还是更新后的旧记录?

我希望不要使用另一个回调(例如 before_create)在模型中设置标志或需要对数据库进行另一个查询。

如有任何建议,我们将不胜感激。

编辑:需要在 after_save Hook 中确定它,对于我的特定用例,没有 updated_atupdated_on 时间戳

最佳答案

我希望将其用于 after_save 回调。

更简单的解决方案是使用 id_changed? (因为它不会在 update 上更改),甚至使用 created_at_changed?(如果时间戳列是)存在。

更新:正如 @mitsy 指出的,如果在回调之外需要进行此检查,则使用 id_previously_changed?。请参阅docs

关于ruby-on-rails - 如何确定after_save中的记录是刚刚创建还是更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4975106/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com