如何显示当前年份?
有一个function,我可以用来显示当前的一年在一个视图? 我努力了
<%= Time.now %>
尝试和显示时间,但这不适合我。
<%= Time.current.year %>
我宁愿使用Date类来获取年份比Time类(如果您只需要date,您不需要考虑小时,分钟和秒)。
<%= Date.today.year %>
参考http://ruby-doc.org/stdlib-2.1.0/libdoc/date/rdoc/Date.html#method-c-today
我认为考虑申请时区的最好方法是:
Date.current.year
我喜欢用:
Time.zone.now.year
这考虑到了当前的时区(如果您已经为特定用户覆盖了该时区)。
尽pipe已经得到了答复,但我认为对于那些想要查看所有build议解决scheme的基准testing结果的人来说,这可能会很方便。
require 'benchmark' n = 500000 Benchmark.bm do |x| x.report { n.times do ; Date.today.year; end } x.report { n.times do ; Date.current.year; end } x.report { n.times do ; Time.current.year; end } x.report { n.times do ; Time.zone.now.year; end } end user system total real 0.680000 0.030000 0.710000 ( 0.709078) 2.730000 0.010000 2.740000 ( 2.735085) 3.340000 0.010000 3.350000 ( 3.363586) 3.070000 0.000000 3.070000 ( 3.082388)
现在,对于像这样简单的事情来说,看起来似乎过于简单,然而,从高吞吐量应用程序的简单优化angular度来看,我将考虑使用Date.today.year
这样说,如果你的应用程序是时区敏感的,基于Date.current
或Time.zone
的方法可能是最好的select。
看看Ryan在Time Zones上精彩的Railscast