Tar*_*her 4 ruby ruby-on-rails ruby-on-rails-3
我有一个日历系统,用户在单独的text_field中输入事件的日期和时间.我将日期和时间存储在事件模型中的一个属性(开始)中我很难确定如何组合日期和时间输入并将其组合到begin属性中.
我最好通过虚拟属性(:date
和:time
)来做这件事,这样我就可以轻松地将我的表单映射到那些虚拟属性,而无需在控制器中执行某些操作.
非常感谢
Kri*_*ris 10
您可以为日期和时间属性创建自己的访问器方法,如下所示:
def date
datetime.to_date
end
def date=(d)
original = datetime
self.datetime = DateTime.new(d.year, d.month, d.day,
original.hour, original.min, original.sec)
end
def time
datetime.to_time
end
def time=(t)
original = datetime
self.datetime = DateTime.new(original.year, original.month, original.day,
t.hour, t.min, t.sec)
end
Run Code Online (Sandbox Code Playgroud)