Согласно документации на http://guides.rubyonrails.org/i18n.html#adding-date-time-formats, лучший способ задать конкретные форматы для даты - определить их в /config/locales/en.yml. Я скопировал и вставил этот файл: https://github.com/rails/rails/blob/master/activesupport/lib/active_support/locale/en.yml в мой каталог локалей.
Я сделал несколько изменений (звездочки только для выделения):
"en-US":
date:
formats:
default: "%Y-%m-%d"
**short: "short %b %d"**
и
time:
formats:
default: "%a, %d %b %Y %H:%M:%S %z "
**short: "short %B %d, %Y"**
И в моем частичном:
<%= l item.create_date, :format => :short %>
где create_date - это строка datetime в моей базе данных.
Я перезапустил свой сервер, но все равно получаю дату, отформатированную так: 15 марта 00:00
У меня такое ощущение, что это потому, что я не использую ни дату, ни время. Я не могу найти определение "короткий" или "длинный" для datetime. Я попытался добавить его в этот файл, добавив этот код:
datetime:
formats:
short: "short %B %d, %Y"
Не повезло. Что мне не хватает. Я чувствую, что следую инструкциям напрямую. Спасибо!