フィールドを検証するにはどうすればよいですか?少なくとも3文字の英字が含まれるようにしてください。Rails、validates_format_of - 最小英字4文字
Valid:
Something, Foobar 111.
Invalid:
.......
AsbjørnMorell
フィールドを検証するにはどうすればよいですか?少なくとも3文字の英字が含まれるようにしてください。Rails、validates_format_of - 最小英字4文字
Valid:
Something, Foobar 111.
Invalid:
.......
AsbjørnMorell
railsy方法があります。詳細自動的にモデルで検証する
validate :yourvalue_must_contain_at_least_3_alphabetic_characters
protected
def yourvalue_must_contain_at_least_3_alphabetic_characters
errors.add(:yourvalue, 'should have at least 3 alphabetic characters') if yourvalue.gsub(/[^A-Z]/i,"").size > 2
end
あなたはそのためにvalidate
メソッドを書くことができます。
ここではRailsの検証に
モデル内のprotected
def validate
unless your_field.gsub(/[^A-Z]/i,"").size > 2
errors.add("your_field", "Must contain at least 3 alphabetical characters")
end
end
より:http://api.rubyonrails.org/classes/ActiveRecord/Validations.html
私はDanSingermanのソリューションを好むが、あなたはまた、ベースの純粋な正規表現を行くことができます:
validates_format_of :password, :with => /([^a-zA-Z]*([a-zA-Z]+)[^a-zA-Z]*){3,}/