我目前有这样的事情:
class Article
# fields = [flag, something]
after_create :update_flag
def update_flag
self.flag = 1 if something_changed?
end
end
Run Code Online (Sandbox Code Playgroud)
但是当我更改某个字段时,它不会更改"标志"字段.我保存了这个物体.仍然没有变化.
a = Article.create(flag: 0, something: "content")
a.something = "different"
a.save
a.flag
> 0
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
更改
after_create
Run Code Online (Sandbox Code Playgroud)
至
after_update
Run Code Online (Sandbox Code Playgroud)
在您的代码示例中,您正在更新对象,这就是您需要不同钩子的原因.有关详细信息,请参阅文档.
| 归档时间: |
|
| 查看次数: |
5028 次 |
| 最近记录: |