【发布时间】:2010-03-08 18:44:20
【问题描述】:
默认情况下,数据库中的日期时间字段正在被转换并去除毫秒:
some_datetime => "2009-11-11T02:19:36Z"
attribute_before_type_cast('some_datetime') => "2009-11-11 02:19:36.145"
如果我尝试覆盖此属性的访问器,例如;
def some_datetime
attribute_before_type_cast('some_datetime')
end
当我为该模型尝试“to_xml”时,我收到以下错误:
NoMethodError(未定义的方法 “2009-11-11”的“xmlschema” 02:19:36.145”:字符串):
我尝试将字符串解析为 Time 对象,但找不到包含毫秒数的对象;
def some_datetime
Time.parse(attribute_before_type_cast('some_datetime').sub(/\s/,"T").sub(/$/,"Z"))
end
谁能帮助获取由 to_xml 呈现的以毫秒为单位的日期时间?
【问题讨论】:
标签: ruby-on-rails activerecord xml-serialization models