给定数据库中的时间戳,如下所示:2012-06-06T00:27:33Z
在浏览器中为用户呈现它的最佳方式是什么:
5/02/12 3:48 PM
最好使用JS库来使用客户端在客户端本地时间渲染?这里的最佳做法是什么?谢谢
给定数据库中的时间戳,如下所示:2012-06-06T00:27:33Z
在浏览器中为用户呈现它的最佳方式是什么:
5/02/12 3:48 PM
最好使用JS库来使用客户端在客户端本地时间渲染?这里的最佳做法是什么?谢谢
我使用该Moment JS
库进行一般日期解析和格式化。它很甜。
你的例子基本上是:
var date = moment('2012-06-06T00:27:33Z');
console.log('Formatted is %s', date.format('M/DD/YY h:m A'));
>> Formatted is 6/05/12 5:27 PM
默认情况下,Moment 以本地时间解析,自动进行时区转换。
如果您使用的是 Rails,请在 environment.rb 中添加类似
Date::DATE_FORMATS[:browser] = "%d/%b/%Y %H:%m"
看看这个根据你的口味格式化。http://www.onrails.org/2008/08/20/what-are-all-the-rails-date-formats
在你认为
<%= Model.date_field.to_s(:browser) %>
如果您需要调整时区,您首先需要查询用户的时区。有几种方法可以做到这一点。
然后在视图中你可以使用例如
<%= Model.date_field.change(:offset => "+0300").to_s(:browser) %>
或者
<%= Model.date_field.in_time_zone(-3).to_s(:browser) %>
或者
<%= Model.date_field.utc.to_s(:browser) %>
或者
<%= (Model.date_field.utc + Time.zone_offset('EST')).to_s(:browser) %>
有任何选择!
希望这有帮助!
尝试:
<%= article.created_at.local_time %>
你应该使用语言环境。
语言环境/de.yml
de:
date:
formats:
default: "%d.%m.%Y"
short: "%e. %b"
long: "%A, %d.%B %Y um %H:%M"
only_day: "%e"
day_names: [Sonntag, Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag]
abbr_day_names: [So, Mo, Di, Mi, Do, Fr, Sa]
month_names: [~, Januar, Februar, März, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember]
abbr_month_names: [~, Jan, Feb, Mär, Apr, Mai, Jun, Jul, Aug, Sep, Okt, Nov, Dez]
order: [ :day, :month, :year ]
time:
formats:
default: "%A, %d.%B %Y um %H:%M"
short: "%d.%m.%Y"
long: "%d.%m.%Y, %H:%M:%S"
在意见中:
<%= I18n.l current_article.created_at, :format => :long %>
对于时区转换:
配置/环境/development.rb
config.time_zone = 'Berlin'