2010-09-18 4 views
3

Je veux chose simple. Traduire les routes avec I18n comme celui-ciRails 3 - traduction des routes avec I18n

get I18n.t('routes.login') => "devise/sessions#new", :as => :new_user_session 

Je fait fichier initilizers/locale.rb avec

I18n.default_locale = :cz 

Il fonctionne parfaitement quand je lance « routes râteau », mais quand je lance le serveur, il ignore locale par défaut et jeter 'traduction manquant message'

Une suggestion de ce qui se passe et pourquoi?

Répondre

2

Je crois que normalement les routes sont chargées une seule fois, même avant que les paramètres régionaux soient définis, donc vous ne pouvez pas utiliser la logique que vous avez ici. Vous avez besoin de choses plus avancées pour le faire fonctionner. Jetez un oeil à i18n_routing: http://github.com/kwi/i18n_routing

+0

gem est une bonne suggestion pour les rails 2 et 3. Il gère apparemment toutes les urls montrées dans chaque locale que vous manipulez. Il ne touche en aucun cas à la base de données, donc si vous interrogez dans SQL vous maintenez le nom de la table. – Jerome