2011-02-26 72 views
0

拼湊從下面的表格收集信息後:紅寶石:乾淨的方式日期和時間

form

什麼是兩個部分拼湊成Ruby的一個日期對象的最簡單的方法? (我寫了一些糟糕的方式做到這一點,是好奇,如果有一個更清潔的方法)

+2

粘貼代碼,你是怎麼做到的。 – Zimbabao 2011-02-26 08:15:53

回答

2
require 'date' 
date, time = %w(2011-02-26 17:00) 
dt = DateTime.parse("#{date} #{time}:00") 
dt.to_s # => 2011-02-26T17:00:00+00:00 

注UTC的假設;如果需要,你將不得不追加你自己的時區。

1
>> Time.local(*("2011-02-26".split("-") + "17:00".split(":"))) 
=> Sat Feb 26 17:00:00 0100 2011 
>> Time.parse(["2011-02-26", "17:00"].join(" ")) 
=> Sat Feb 26 17:00:00 0100 2011 
1

如果你有作爲2010-02-26 PARAMS [:日期]:00-17:00爲PARAMS [:時間],那麼你可以做

Time.parse("#{params[:date] #{params[:time]}}")