2011-02-04 62 views
1

問題before_validation的問題是,我使用與軌道

def before_validation 
    self.author.strip! 
    self.author_email.strip! 
end 

,我得到一個錯誤信息:

棄用警告:基地#before_validation已被棄用,請使用Base.before_validation:方法來代替。

有人可以指出我正確的方向。由於

回答

9

某處向你的類模型的地方頂部的清理方法的名稱:

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!}