Rails -在哪里添加验证代码?(控制器或模型)



我是Rails新手,正在遵循本教程

I创建了一个名为HighScores的简单模型。

我想自定义这个,这样我就可以为分数添加一个验证方法。我知道我们可以使用像validates_这样的快捷方式,但出于学习的目的,我想写一个方法来确保分数在一定范围内。

验证方法应该放在哪里?是models/high_score.rb还是controllers/high_scores_controllers.rb ?或者在'/helpers/high_scores_helper.rb?

模型具有正确数据的验证应该在模型本身中进行。这确保了将来保存模型数据的任何尝试都将使用此验证,而不管采用的路径是什么。

modelshigh_score.rb

还有——顺便说一句,validates方法不是快捷方式,它们是经过良好测试的代码,您应该接受和使用。

验证应该在模型中进行。

下面是一个范围验证的例子:

validates :score, :numericality => { :greater_than => 0 }
validates :score, :numericality => { :less_than => 100 }

最新更新