Skip to content
tommyblue edited this page Sep 22, 2012 · 5 revisions

Rubyfatt utilizza il supporto a I18n di Rails per la localizzazione delle stringhe. Oltre all'italiano (il default) sono presenti le traduzioni per l'inglese (inline nel codice).

Ogni utente può settare la lingua della propria interfaccia dalla pagina di modifica del profilo.

Se si vuole cambiare lingua globalmente bisogna modificare il file config/application.rb:

config.i18n.default_locale = :it

Basta sostituire :it con :en e riavviare l'applicazione.

Aggiungere una nuova lingua

Per aggiungere una nuova lingua, ad esempio il francese, bisogna creare i file yml necessari copiando quelli della lingua italiana:

cp config/locales/devise.it.yml config/locales/devise.fr.yml
cp config/locales/it.yml config/locales/fr.yml
cp config/locales/simple_form.it.yml config/locales/simple_form.fr.yml

bisogna poi aprire i file copiati e personalizzare le traduzioni. Per aggiungere la lingua tra quelle disponibili bisogna modificare la validazione in /app/models/user.rb per includere la nuova lingua:

validates :language, :inclusion => {:in => ['it', 'en', 'fr']}

Infine si aggiunge una nuova opzione nel form del profilo utente (/app/views/profile/_form.html.erb):

<%= f.input :language, :as => :radio_buttons, :collection => [['Italiano', 'it'], ['English', 'en'], ['Français', 'fr']] %>
Clone this wiki locally