我要在我的Rails應用程序運行下面的代碼:爲什麼我不能在Ruby中解析保存到變量的日期字符串?
ActiveSupport::TimeZone["Central Time (US & Canada)"].parse(game.date).utc.to_date.strftime("%_m/%d")[1..-1]
凡遊戲@games.each do |game|
但是,這並不工作,我得到的錯誤,TypeError: no implicit conversion of ActiveSupport::TimeWithZone into String
。
不過,我可以運行:
ActiveSupport::TimeZone["Central Time (US & Canada)"].parse("2014-04-11 12am").utc.to_date.strftime("%_m/%d")[1..-1]
返回 「4/11」
我如何使用上面的代碼與`game.date」,而不是硬編碼字符串?
編輯
一個遊戲對象如下所示(從DB/seeds.rb):
Game.create(id: 9, date: "2014-04-11 12am", time: "705PM", opponent: "Jacksonville", away: false, event: "friday night fireworks")
EDIT 2
在當我做遊戲的軌道控制檯.date返回:
Fri, 11 Apr 2014 00:00:00 UTC +00:00
所以它看起來不是一個字符串。
是'game.date'字符串或另一個日期對象類型? – lurker
你可以發佈樣本遊戲對象還是@遊戲數組? –
我編輯了我的問題。謝謝! – reknirt