2011-12-13 13 views
6

ho tradotto la mia attiva menu di amministrazione:traduzione mancante activeadmin, Ruby on Rails

# encoding: utf-8 
ActiveAdmin.register City do 
    menu :parent => "Données géographiques", :label => I18n.t(:cities) 
end 

Nel mio active_admin.fr.yml:

fr: 
     active_admin: 
     dashboard: "Tableau de Bord" 
     dashboard_welcome: 
      welcome: "Bienvenue dans Active Admin. Ceci est la page par défaut." 
      call_to_action: "Pour ajouter des sections au tableau de bord, consultez 'app/admin/dashboards.rb'" 
     cities: "Villes" 

Nel mio locale (debian 6) tutto funziona bene, ma sul mio pre-produzione (debian 6), è writter:

translation missing: fr.cities 

ho provato a riavviare apache, cancellare la cache, ricaricare I18n ... I Faile d.

Qualche idea?

risposta

5

ho trovato la soluzione, dovete scrivere che sul vostro application.rb:

config.before_configuration do 
    I18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s] 
    I18n.locale = :fr 
    I18n.default_locale = :fr 
    config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s] 
    config.i18n.locale = :fr 
    # bypasses rails bug with i18n in production\ 
    I18n.reload! 
    config.i18n.reload! 
end 

config.i18n.locale = :fr 
config.i18n.default_locale = :fr 

Riavviare apache e questo è buono!

+0

Grazie per aver postato la soluzione, ho appena incontrato lo stesso problema! – brentvatne

+0

Le prime tre linee erano sufficienti per me. –

8

questo ha funzionato per me:

config.after_initialize do 
    I18n.reload! 
end 
2

ho trovato la soluzione, aggiungere questo in application.rb

config.before_configuration do # FIX conflict I18n ActiveAdmin 
    I18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s] 
    I18n.locale = I18n.default_locale = config.i18n.default_locale 
    I18n.reload! 
end