Я использую шаблон simple_form https://github.com/plataformatec/simple_form для создания некоторых полей ввода; одна из которых представляет собой группу переключателей, например:
<%= f.input :due_date, :collection => ['Today', 'Tomorrow', 'In 3 Days'], :as => :radio %>
Итак, это поле в базе данных "due_date" - это дата. Но вместо того, чтобы люди нажимали на этот маленький календарь, мы знаем, что обычно люди просто хотят этих трех вариантов. И я хочу использовать переключатель. Но вывод этой строки подсказывает, что если я сейчас удалю кнопку отправки, параметр due_date будет иметь указанные здесь значения, то есть сегодня, завтра или через 3 дня. Здесь вывод HTML для части Today.
<span>
<input class="radio optional" id="project_due_date_today" name="project[due_date]" type="radio" value="Today">
<label class="collection_radio" for="project_due_date_today">Today</label>
</span>
В идеале я хочу:
<%= f.input :due_date, :collection_to_params => [Date.today, Date.tomorrow, Date.today+3], :display_value => ['Today', 'Tomorrow', 'In 3 Days'], :as => :radio %>
Поэтому, когда пользователь нажимает на один и отправляет, я фактически получаю некоторую дату ISO, отправленную на сервер.
Любые идеи?
Спасибо!