如何制作两个单独的字段,以便可以处理到数据库中的一个datetime field
?
我正在使用jquery日期时间选择器,它在下面的代码示例中输入值之类的值。
参数仅包含带时间的字段,但忽略带日期的字段。
如果我用时间评论字段,则发送并保存日期,但参数看起来像“2013-23-02”,并且不像多参数那样转发。
#model
field :start_at, type: DateTime
#view
= f.text_field :start_at, :value => "2013-02-23"
= f.text_field :start_at, :value => "20:20:20"
答案 0 :(得分:2)
你可以使用虚拟属性和回调(这没有经过测试,但你应该得到这个想法)
# model
attr_writer :start_at_time, :start_at_date
before_validation :build_start_at
def start_at_date
@start_at_date ||= start_at.to_date
end
def start_at_time
@start_at_time ||= start_at.strftime("%H:%M")
end
def build_start_at
self.start_at = Time.parse "#{start_at_date} #{start_at_time}"
end
# view
= f.text_field :start_at_date
= f.text_field :start_at_time