Хорошо, у меня есть 3 поля для выбора даты рождения.
В моей модели User настроены константы, чтобы указать месяцы, годы и т. Д.
В любом случае, я могу успешно проверить эти поля выбора отдельно.
Что я хочу сделать - это объединить: день,: месяц и: год и сохранить в: день рождения и проверить всю дату как единое целое, чтобы я мог вернуть 1 ошибку, а не чем 3 отдельных.
Это также облегчит сохранение проверенной даты в поле моего дня рождения в моей базе данных.
Часть моей формы
<td> <%= f.input :day, :required => false, :label => "Birthday: " , :prompt => "Day", :collection => User::DAYS %></td>
<td> <%= f.input :month, :label => false, :prompt => "Month", :collection => User::MONTHS %> </td>
<td> <%= f.input :year, :label => false, :prompt => "Year", :collection => User::YEAR_RANGE %> </td>
Часть пользовательской модели
МЕСЯЦЕВ = ["Январь", 1], ["Февраль",
2], ["Март", 3], ["Апрель", 4],
["Май", 5], ["Июнь", 6], ["Июль", 7],
["Август", 8], ["Сентябрь", 9],
["Октябрь", 10], ["Ноябрь", 11],
["Декабрь", 12] # закончить эти ДНИ =
1..31 # закончить это START_YEAR = Time.now.year - 106 END_YEAR =
Time.now.year YEAR_RANGE =
START_YEAR..END_YEAR
класс User
validates_presence_of: day,: message
=> «В какой день месяца ты родился?»
validates_presence_of: month,: message
=> «В каком месяце ты родился?»
validates_presence_of: year,: message
=> «Какой у вас год рождения?»
конец