問題before_validation的問題是,我使用與軌道
def before_validation
self.author.strip!
self.author_email.strip!
end
,我得到一個錯誤信息:
棄用警告:基地#before_validation已被棄用,請使用Base.before_validation:方法來代替。
有人可以指出我正確的方向。由於
問題before_validation的問題是,我使用與軌道
def before_validation
self.author.strip!
self.author_email.strip!
end
,我得到一個錯誤信息:
棄用警告:基地#before_validation已被棄用,請使用Base.before_validation:方法來代替。
有人可以指出我正確的方向。由於
每這裏 http://api.rubyonrails.org/classes/ActiveRecord/Callbacks.html
嘗試這樣的事情。你可以調用before_validation並傳遞它,而不是覆蓋它。
before_validation() do
self.author.strip!
self.author_email.strip!
end
某處向你的類模型的地方頂部的清理方法的名稱:
before_validation :remove_whitespace
...然後再往下模型類的地方用相同名稱的私有方法:
def remove_whitespace
self.author.strip!
self.author_email.strip!
end
可選,如果你想要一個班輪,那麼你也可以通過一個lambda,而不是一個方法名來before_validation:
before_validation lambda {self.author.strip!; self.author_email.strip!}
感謝您的答案像一個魅力工作.. – Xclusive 2011-02-04 18:22:50