I was looking for a way to change the default date format in Rails 4.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Found a nice approach through the Rails Internationalization (I18n) API
Data and time formats can be 'translated' by adding the format to the i18n configuration.
config/locales/en.yml
en:
date:
formats:
default: "%d/%m/%Y"
time:
formats:
default: "%d/%m/%Y %H:%M"
Note: remember to not have tabs for the indent, like I did first time :)
As mentioned by NoelProf in the comments
To use i18n conversion don't forget the l (lower case L) before your date in views! For example: <%= l your_date %>
You are invited to comment if you found other ways working well.
回答2:
Add this
# Date
Date::DATE_FORMATS[:default] = "%d/%m/%Y"
# Time
Time::DATE_FORMATS[:default] = "%d/%m/%Y %H:%M"
to config/initializers/date_time.rb
Then restart the server.
回答3:
If you use i18n conversion don't forget the l
method before your dates in views!
<%= l your_date %>