Проверьте необразцовое поле

Я добавил дополнительное поле к своей новой форме:

<%= select_tag :quantity, options_for_select(["Select a Value"].concat((1..10).to_a)) %>

Это указывает количество копий записи, которая будет создана.

Как я могу проверить присутствие (или numericality) того поля, поскольку это не часть самой модели?

validates_presence_of :quantity сбои!!!

7
задан Ben Orozco 14 January 2010 в 07:44
поделиться

2 ответа

У Криса Хэйса (из команды Reporting Services) есть запись в блоге об этой самой вещи. Это может помочь:

http://blogs.msdn.com/chrishays/archive/2004/07/23/HorizontalTables.aspx

-121--3632222-

Кажется, что Грубер пересмотрел свое регулярное выражение :

\b((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.])(?:[^\s()<>]+|\([^\s()<>]+\))+(?:\([^\s()<>]+\)|[^`!()\[\]{};:'".,<>?«»“”‘’\s]))

Работает просто прекрасно сейчас .

-121--3186117-

Найдено. Может потребоваться добавить виртуальный атрибут в модель.

.........

attr_accessor :not_on_db
.........

validates_presence_of     :not_on_db,
validates_length_of       :not_on_db,    :within => 1..5
.........
14
ответ дан 6 December 2019 в 14:04
поделиться

Использование Validates_numericality_of Vavelation. Валидация численности по умолчанию проверяет по умолчанию для плавающего типа, вам нужно сказать, что хотите увидеть целые числа. Поскольку количество не будет храниться в БД, он должен быть виртуальным.

Попробуйте следующее:

attr_accessor :quantity
validates_numericality_of :quantity, :only_integer => true

Validates_numericality_OF не принимает NIL по умолчанию, вам не нужно необходимость проверять наличие атрибута, и, как вы можете изменить диапазон количества в представлении, я бы не подтвердил его здесь Отказ

Это вы хотите проверить диапазон, объявляйте его как константу в модели. Обратитесь к этой постоянной как в проверке, так и в представлении.

1
ответ дан 6 December 2019 в 14:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: