在我的控制器中我有这个:
validates_presence_of :order_of_importance, :on => :create, :with => /^\d{3}$/
但如果他们输入:
,这仍然会验证(我认为)4231
但我想确保他们仅输入3位数字。
有什么想法吗?
答案 0 :(得分:9)
/^\d{3}$/
应该这样做。它确保数字在字符串末尾的开头和结尾匹配。
此外,您最后不需要i
,因为数字不是套装。
答案 1 :(得分:1)
你可以尝试
validates_length_of :order_of_importance, :maximum => 3
答案 2 :(得分:0)
也许是“更多Railsy”的方式:
validates_length_of :order_of_importance, :on => :create, :is => 3
validates_numericality_of :order_of_importance, :on => :create