Tengo un modelo ActiveRecord Event
con una columna de fecha y hora starts_at
. Me gustaría presentar un formulario, donde la fecha y la hora para starts_at
se eligen por separado (por ejemplo, "23-10-2010"
para la fecha y "18:00"
para el tiempo). Estos campos deben estar respaldados por la única columna starts_at
, y las validaciones deben estar preferiblemente en contra de starts_at
, también.Separe los campos de fecha y hora en Rails
Puedo, por supuesto, perder el tiempo con atributos virtuales y ganchos, pero me gustaría una solución más elegante. He experimentado tanto con composed_of
(rdoc) como con atributo decorador (lighthouse discussion, github) sin éxito.
A continuación se muestra un esbozo de lo que me gustaría ..
class Event < ActiveRecord::Base
validates_presence_of :start_date
end
# View
# On submission this should set start_date.
form_for @event do |f|
f.text_field :starts_at_date # date-part of start_date
f.text_field :starts_at_time_of_day # time-of-day-part of start_date
f.submit
end
Cualquier ayuda apreciada.
Me he encontrado con esto varias veces pero todavía no he encontrado una buena solución. La razón para dividirlo es para poder usar un datepicker y time_select por separado. – benvds