【发布时间】:2014-04-18 02:01:50
【问题描述】:
我在我的用户模型中使用 after_update 回调。
模型用户.rb
after_update :check_phone
check_phone
phone_validation if phone_changed?
end
def phone_validation
code = Array.new(8){rand(36).to_s(36)}.join
self.phone_verification_code = code
self.save
end
但是,这会导致无限循环。问题是在phone_validation方法中self.save之后再次调用回调。 phone_changed? 显然仍然返回 true。我该如何改变这种行为?
【问题讨论】: