我创建了一个带有日期的自定义json对象。不幸的是,当我想使用jQuery中的日期变成Date对象时,该对象变为无效。日期字符串的情况如下:
2011-12-14 00:59:59 +01:00
如果我使用内置的object.to_json渲染它,时间会像这样呈现:
2011-12-14T00:59:59 + 01:00
这样我可以将此字符串转换为查询日期对象。
所以我的问题是如何在rails中呈现日期,以便它成为第二种格式。
感谢Markus
答案 0 :(得分:1)
从资料来源可以看出,to_json
的{{1}}方法是由ActiveSupport(source here)添加的。
所以你应该在初始化程序(例如DateTime
)中修补它,如下所示:
config/initializers/datetime.rb
在这里测试并工作:http://codepad.org/NRzqiJT3
答案 1 :(得分:1)
如果放入初始化程序(例如config / initializers /),以下内容适用于所有主流浏览器和ie7 +(我没有测试ie6)
class ActiveSupport::TimeWithZone
def as_json(options = {})
strftime('%Y/%m/%d %H:%M:%S %z')
end
end
答案 2 :(得分:0)
这是实现类似目标的另一种方式:
class Date
def as_json(options = {})
I18n.localize self
end
end
希望它对某人有帮助。