2

こんにちは私はフォーム入力を検証したいので、入力として1〜9の数字だけを取ります。これはどのように達成できますか

私のモデルにはこれがありますが、一致するものを正しく取得できないようです

validates_format_of:myfield、:with => ??????、:on =>:create

4

2 に答える 2

3

こちらをご覧ください:http://apidock.com/rails/ActiveModel/Validations/HelperMethods/validates_inclusion_of

 validates :myfield, :inclusion => { :in => 1..9 }

また

 validates_inclusion_of :myfield, :in => 1..9

編集-私はそう思っmyfieldたがinteger、あなたがそれを定義したなら、あなたは:stringを追加する必要がある。validates_numericality_of

validates_numericality_of :myfield, :only_integer => true
validates_inclusion_of :myfield, :in => 1..9
于 2012-06-27T12:22:46.673 に答える
1

validates_format_of :myfield, :with => /([^a-zA-Z][1-9]?)/, :on => :create

2.3.xを使用している場合は、問題なく動作するはずです。

2.3.8以降は削除されることに注意してください

于 2012-06-27T12:30:49.070 に答える