[英]Rails Convert yyyy-MM-dd'T'HH:mm:ssZ To date
Following is my query where I am fetching order wise payments on latest first basis. 以下是我的查询,该查询是我在最近的第一个基础上提取按订单付款的信息。
I wish to fetch OrderPayment
created_at
here. 我希望在这里获取
OrderPayment
created_at
。
If I write <%= OrderPayment.last.created_at%>
I get 2019-06-28 16:31:12 +053
which is a date, and I'm currently using <%= order_payment["created_at"]%>
where I get 2019-06-28T11:01:12.686086
which is a string. 如果我写
<%= OrderPayment.last.created_at%>
我得到的是2019-06-28 16:31:12 +053
,这是一个日期,而我当前正在使用<%= order_payment["created_at"]%>
我得到2019-06-28T11:01:12.686086
这是一个字符串。
Why am I getting such a weird representation? 为什么我会得到如此怪异的代表?
@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%>
if i do <%= Time.at(DateTime.parse(order_payment["created_at"])).strftime("%d-%m-%y %I:%M %p")%>
i get output like OrderPayment.last.created_at but i want to know whats the correct way to do it? 如果我做
<%= Time.at(DateTime.parse(order_payment["created_at"])).strftime("%d-%m-%y %I:%M %p")%>
我得到类似于OrderPayment的输出.last.created_at,但我想知道正确的方法是什么?
I think in your situation database and your rail environment time zones are different. 我认为您的情况数据库和铁路环境时区不同。 and its returning db value as it is with timezone you should try
Time.zone.parse(//your query//)
It will return time and date with current time zone. 及其返回的db值(与时区相同),您应该尝试
Time.zone.parse(//your query//)
,它将返回当前时区的时间和日期。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.