我正在创建一个列,显示用户何时完成证书。我希望完成的日期以12小时格式显示在用户的时区中。截至目前,我有正确的时区显示 - 但它显示在军事时间。如何以12小时格式显示用户所在时区的时区?
这是我在.rb文件中的内容:
def date_earned
if user_certificate
user_certificate.created_at.localtime
else
'Not Completed'
end
end
这是我的.html.haml代码行:
%span.date-earned
=certificate_presenter.date_earned
目前在列中显示为:
2015-12-09 14:29:12 -0800
答案 0 :(得分:0)
更改此行:
user_certificate.created_at.localtime
到
user_certificate.created_at.localtime.strftime("%Y-%m-%d %I:%M:%S %z")
答案 1 :(得分:0)
使用
user_certificate.created_at.localtime.strftime("%Y-%m-%d %I:%M:%S %z")
2015-12-09 02:29:12 -0800
或
user_certificate.created_at.localtime.strftime("%Y-%m-%d %I:%M:%S:%P %z")
" 2015-12-09 02:29:12:pm -0800"
其中'%P'识别上午或下午。