0
我有一个包含名为DOB的列的数据类型为DATETIME的列的表。问题是created_at也是日期时间,但是通过JSON接收到的数据是这种格式的收到的日期时间格式的日期在rails中的格式不同
"created_at":"2013-02-02 11:57:42",
"dob":"2013-02-18T18:30:00Z"
这两个日期格式不同,但它们都具有日期时间数据类型。 现在我正在使用Datejs
来格式化不会解析DOB格式的日期,它只能解析created_at格式。
现在该怎么办?
下面是我在做什么,通过datejs
if(value.dob != null){
alert(value.dob);
d1 = Date.parse(value.dob);
alert(d1);
dob = d1.toString("M-d-yyyy");
}
解析和我得到的控制台此错误:
: d1 is null
[Break On This Error]
dob = d1.toString("M-d-yyyy");
我的控制器:
def get_oi_report_contact
@contactlist = CaseOiReportMap.select("rc.*").where("case_oi_report_maps.oireport_identifier = ?",identifier)
.joins("LEFT JOIN case_oi_report_contacts_maps cm on cm.case_oi_report_map_id = case_oi_report_maps.id")
.joins("LEFT JOIN oi_report_contacts rc on rc.id = cm.oi_report_contact_id ")
respond_to do |format|
format.json { render :json => @contactlist.to_json }
end
end
我有还用猴子补丁:
class ActiveSupport::TimeWithZone
def as_json(options = {})
strftime('%Y-%m-%d %H:%M:%S')
end
end
但它似乎并没有工作。
它必须是通过JavaScript作为我使用Ajax和JSON接收数据。 –
我想我误解了你的要求。你试图解析“dob”:“2013-02-18T18:30:00Z”使用datejs?如果情况如此,你怎么设定dob? – jvnill
对不起,我没有得到你..你是指我如何插入?或dob列数据类型?有一件事DOB数据类型是DATETIME,它以这种格式存储2013-02-02 19:09:14 –