1

私はRailsが初めてで、このチュートリアルに従っています

HighScores という単純なモデルを作成します。

スコアの検証方法を追加できるように、これをカスタマイズしたいと思います。使用できる validates_ のようなショートカットがあることは知っていますが、学習の目的で、スコアが特定の範囲内にあることを保証するメソッドを書きたいと思います。

検証メソッドはどこに行くべきですか? 中models/high_score.rbか中controllers/high_scores_controllers.rbか?それとも、`/helpers/high_scores_helper.rb?

4

2 に答える 2

4

検証はモデルで行う必要があります。

範囲検証の例を次に示します。

validates :score, :numericality => { :greater_than => 0 }
validates :score, :numericality => { :less_than => 100 }
于 2013-05-29T15:35:51.973 に答える
4

モデルに正しいデータがあることの検証は、モデル自体で行う必要があります。これにより、モデルのデータを保存しようとする以降の試行では、パスに関係なく、この検証が使用されます。

models\high_score.rb

また、FWIW、validates メソッドは近道ではありません。これらは十分にテストされたコードであり、採用して使用する必要があります。

于 2013-05-29T15:35:54.880 に答える