Ответ 1
validates :value, :inclusion => {:in => [1,2]}
См. http://apidock.com/rails/ActiveModel/Validations/HelperMethods/validates_inclusion_of
Я хочу проверить число :value
на 1 или 2
validates :value, :format => { :with => /1|2/, :message => "Select number.." }
Однако вышеприведенный код не выполняет проверку, если value == 1
Пожалуйста, убедитесь, что ваше решение позволяет мне добавить сообщение для подтверждения.
validates :value, :inclusion => {:in => [1,2]}
См. http://apidock.com/rails/ActiveModel/Validations/HelperMethods/validates_inclusion_of
Вы ищете validates_inclusion_of:
validates_inclusion_of :value, :in => [1, 2],
:message => "Select one of %{value}"
Вы также можете использовать (довольно новую) форму shothand и Range вместо массива:
validates :value, :inclusion => { :in => 1..2 }
если вы хотите, чтобы это число было в пределах 1 и 2 (1,5, 1,6839749 и т.д.), выполните
validates_numericality_of :value, :greater_than_or_equal_to => 1, :less_than_or_equal_to => 2, :message => "blah"
может быть не тем, что вы ищете, но стоит отметить,