To get today's date I do:
Date.today # => Fri, 20 May 2011
I would like to get today's date in a specific timezone, say 'Melbourne'.
I have the following setting in my application.rb:
config.time_zone = 'Melbourne'
and I set:
Time.zone = 'Melbourne'
in my application controller before each action.
However, it doesn't help (I guess because these settings affects only dates that are stored in the database).
How could I get today's date in 'Melbourne' ?
Date objects don't necessarily have timezones, but Time objects do. You can try it as a Time, then convert back to a Date:
Time.now.to_date
# => Thu, 19 May 2011
Time.now.in_time_zone('Melbourne').to_date
# => Fri, 20 May 2011
You should be able to do this: Time.current. That would display the current time in Melbourne if that's what Time.zone is set to.
Date.currentDate.current is probably the most clear and succinct way, and was added in Rails 3.
$ Date.current
#=> Sat, 14 Jul 2018
http://apidock.com/rails/v3.2.13/Date/current/class
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With