Отдельные поля формы даты и времени в Rails

У меня есть модель ActiveRecord Событие со столбцом даты и времени start_at . Я хотел бы представить форму, в которой дата и время для start_at выбираются отдельно (например, «23-10-2010» для даты и «18:00» для времени). Эти поля должны поддерживаться одним столбцом start_at , а проверки предпочтительно должны проводиться против start_at , слишком.

Я, конечно, могу возиться с виртуальными атрибутами и хуками, но мне бы хотелось более элегантного решения. Я безуспешно экспериментировал как с hibited_of ( rdoc ), так и с атрибутом-декоратором ( lighthouse обсуждение , github ).

Ниже приводится примерное описание того, что я хотел бы ...

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

Любая помощь приветствуется.

40
задан pgericson 9 September 2010 в 14:28
поделиться