I18n

Wyświetlane komunikaty, w szczególności komunikaty o błędach, powinny być po polsku.

Jak to zrobić? Zaglądamy do katalogu locales po wskazówki:

# Sample localization file for English.
# Add more files in this directory for other locales.
# See http://github.com/svenfuchs/rails-i18n/tree/master/rails%2Flocale
# for starting points.

Wszystkie(?) komunikaty Rails można znaleźć w plikach:

Polskie tłumaczenia komunikatów są w pliku pl.yml

Lokale zmieniamy w następujący sposób. W pliku environment.rb odkomentowujemy i edytujemy wiersz z config.i18n.default_locale:

  # The default locale is :en and all translations
  # from config/locales/*.rb,yml are auto loaded.
  # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}')]
  config.i18n.default_locale = :pl
end

Wersję raw pliku pl.yml zapisujemy w katalogu config/locales/.

Angielskie nazwy modeli i atrybutów też możemy przetłumaczyć. Przykład pokazujący jak to zrobić znajdziemy w pliku active_record.yml. Opisane to też jest w Rails Guides, Translations for Active Record Models

Gem polish

Niestety, i18n ma problemy z taką odmianą: bajtów/bajt/bajty. Daty też nie są wypisywane tak ja należy, czyli tak: 14 marca 2010.

Poprawił to Grzesiek Kołodziejczyk i udostępnił w postaci wtyczki: Polish language support for Ruby on Rails

I18n_routing

URL też czasami należy przetłumaczyć. Jak to zrobić opisano w Translate your Rails2/3 routes with ease.

Przykład: will paginate

Jak spolszczyć komunikaty: Next, Previous…

Gem r18n

Nowe możliwości…

Różne

Obejrzenie, krótkiego screencastu Ryana Batesa też ma sens.