Дата выпуска с Ruby on Rails - PullRequest
1 голос
/ 11 марта 2012

Я просто работаю над простым приложением Ruby on Rails, которое хранит информацию о сотрудниках, но я понял, что мне нужен способ проверить, что датой трудоустройства обязательно должно быть начало даты отставки.

<div class="field">
   <%= f.label :date_of_employment %><br />
   <%= f.date_select :date_of_employment, :start_year =>1990 %>
</div>
<div class="field">
   <%= f.label :date_of_resignation %><br />
   <%= date_select :date_of_resignation, :start_year => Time.now %>

Ответы [ 2 ]

2 голосов
/ 11 марта 2012

Вы должны проверить проверяет своевременность драгоценный камень, если вы счастливы добавить внешний код в ваш проект.Он добавляет все виды проверок на основе времени / даты.

Включая проверку того, что одно поле находится до / после другого.Например, в вашей модели могут использоваться следующие команды:

validates_datetime :date_of_resignation, :after => :date_of_employment

Этот драгоценный камень не работает на javascript, это чистый Ruby.

0 голосов
/ 11 марта 2012

Одним из простых решений, которое вы можете рассмотреть, является наличие функции javascript для проверки этих двух дат при отправке формы.Таким образом, вашему серверу не нужно обрабатывать недействительные данные.

Мы можем выполнить проверку на уровне модели Rails перед сохранением в базу данных.Например, эти строки кода в модели проверят данные перед сохранением

validate :verify_date
def verify_date
   errors.add("Invalid date") if date_of_resignation < date_of_employment
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...