ruby on rails 3 الشارع كيف تظهر السنة الحالية في العرض؟



openstreetmap sketchup plugin (4)

<%= Time.current.year %>

http://pleac.sourceforge.net/pleac_ruby/datesandtimes.html

هل هناك وظيفة يمكنني استخدامها لإظهار السنة الحالية في طريقة العرض؟ لقد حاولت

<%= Time.now  %>

في محاولة لإظهار الوقت ولكن هذا لا يعمل بالنسبة لي.


Answer #1

على الرغم من أنه قد تم الإجابة عليه بالفعل ، أعتقد أنه قد يكون مفيدًا لأولئك الذين يرغبون في الاطلاع على نتائج قياسية لجميع الحلول المقترحة.

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)

الآن ، قد يبدو الأمر على القمة لشيء بسيط مثل ذلك ، من منظور تحسين بسيط لتطبيق إنتاجية عالية ، Date.today.year استخدام Date.today.year

قال ذلك ، إذا كان التطبيق الخاص بك هو حساسية المنطقة الزمنية ، وربما تكون Date.current أو Time.zone القائمة هي أفضل رهان.

تحقق من هذا Railscast رائع من قبل ريان في المناطق الزمنية


Answer #2

أعتقد أن أفضل طريقة للحصول على السنة الحالية التي تفكر في تطبيق المنطقة الزمنية هي:

Date.current.year

Answer #3

أحب أن استخدم:

Time.zone.now.year

هذا يأخذ في الاعتبار المنطقة الزمنية الحالية (طارئ كنت قد تجاوز ذلك لمستخدم معين).





ruby-on-rails-3