tutorial spanish rails multi language i18n ruby-on-rails ruby-on-rails-3 internationalization fallback

ruby-on-rails - spanish - rails time format i18n



cómo usar los rieles i18n características de retorno (5)

¿Ha habilitado retrocesos para su back-end? Asumiendo que es simple (basado en yml en el ejemplo):

poner esto en un inicializador:

require "i18n/backend/fallbacks" I18n::Backend::Simple.send(:include, I18n::Backend::Fallbacks)

https://github.com/svenfuchs/i18n/wiki/Fallbacks

Tengo este problema i18n

activerecord: notices: messages: success: create: "Something was created" models: user: success: create: "Thanks for registration" I18n.t("activerecord.notices.models.user.success.create") # => "Thanks for registration" I18n.t("activerecord.notices.models.book.success.create") # => "translation missing: de, activerecord, notices, models, book, success, create"

No sé por qué el modelo de libro no recibe el masaje alternativo. He configurado config.i18n.fallbacks = true . Estoy usando Rails 3


Configuro generalmente en config / application.rb

config.i18n.fallbacks =[:de, :fr, :en]

Entonces puedes desacelerar el orden del repliegue.

Pero mantenga la atención en algunos entornos / *. Rb la configuración se sobrescribe.


Creo que la mejor manera de manejar una cadena que falta, es mostrar una configuración regional predeterminada, en lugar de un mensaje de error.

Agregue esta línea en application.rb para retroceder a la configuración regional en inglés.

config.i18n.fallbacks = [:en]

En caso de que quiera especificar retrocesos específicos de la configuración regional, puede usar lo siguiente:

config.i18n.fallbacks = {:de => [:de,:en], :en => [:en,:de]}

Además, tenga en cuenta que puede habilitar y deshabilitar reembolsos según su entorno. Por lo tanto, durante el desarrollo podría tener sentido que se muestre un error; en su lugar, puede habilitar los repliegues en sus environments/production.rb con lo siguiente:

config.i18n.fallbacks = true


Cuando se da una opción : predeterminada , se devolverá su valor si falta la traducción:

I18n.t :missing, :default => ''Not here'' # => ''Not here''

Más información here


En los rieles 3+, esto se establece en los archivos config / environments:

# Enable locale fallbacks for I18n (makes lookups for any locale fall back to # the I18n.default_locale when a translation can not be found) config.i18n.fallbacks = true