繁体   English   中英

Rails转换yyyy-MM-dd'T'HH:mm:ssZ至今

[英]Rails Convert yyyy-MM-dd'T'HH:mm:ssZ To date

以下是我的查询,该查询是我在最近的第一个基础上提取按订单付款的信息。

我希望在这里获取OrderPayment created_at

如果我写<%= OrderPayment.last.created_at%>我得到的是2019-06-28 16:31:12 +053 ,这是一个日期,而我当前正在使用<%= order_payment["created_at"]%>我得到2019-06-28T11:01:12.686086这是一个字符串。

为什么我会得到如此怪异的代表?

@order_payments = OrderPayment.select("order_id, json_agg(order_payments.* order by order_payments.created_at desc) as details").includes(order:).order("order_id desc").group(:order_id)

#iterating @orderpayments for listing
<% @order_payments.each do |order_detail| %>
 <%details = order_detail.details%>
  <%=order_payment["created_at"]%>
<%end%>

如果我做<%= Time.at(DateTime.parse(order_payment["created_at"])).strftime("%d-%m-%y %I:%M %p")%>我得到类似于OrderPayment的输出.last.created_at,但我想知道正确的方法是什么?

我认为您的情况数据库和铁路环境时区不同。 及其返回的db值(与时区相同),您应该尝试Time.zone.parse(//your query//) ,它将返回当前时区的时间和日期。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM