【发布时间】:2010-09-09 14:28:34
【问题描述】:
我有一个带有日期时间列 starts_at 的 ActiveRecord 模型 Event。我想提供一个表格,其中starts_at 的日期和时间是单独选择的(例如"23-10-2010" 用于日期,"18:00" 用于时间)。这些字段应由单个列 starts_at 支持,并且验证最好也应针对 starts_at。
我当然可以随意使用虚拟属性和钩子,但我想要一个更优雅的解决方案。我已经对composed_of (rdoc) 和属性装饰器 (lighthouse discussion, 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
任何帮助表示赞赏。
【问题讨论】:
-
我已经遇到过几次了,但仍然没有找到好的解决方案。拆分它的原因是我可以分别使用 datepicker 和 time_select。
标签: datetime forms activerecord ruby-on-rails-3