2011-02-04 104 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!}