保存后Rails 3.2更新属性

时间:2013-04-03 09:46:30

标签: ruby-on-rails-3 after-save

我希望在保存数据后更新数据库中的特定attribut。

例如,我的表中有一个名为pending的列,它是一个布尔值。我希望在保存数据时将此值设置为true。

after_save :do_something

private
def do_something
  self.update_column(:pending, true)
end

这不起作用。这里有谁有解决方案?

2 个答案:

答案 0 :(得分:0)

您可以直接修改属性,如:

after_save { |user| user.username = user.username.downcase }

答案 1 :(得分:0)

尝试after_commit而不是after_save。它将在保存事务之外运行。