Rails engine ActiveRecord models I18n -


i have rails app depends on separate engine (stored in vendor/engine_name). engine has activerecord object bar:

module foo   class bar < activerecord::base     # has attribute bar_attr   end end 

in engine's config/locales/en.yml file, i've tried:

en:   activerecord:     attributes:       bar_attr: "test" 

i've tried:

en:   activerecord:     attributes:       bar:         bar_attr: "test" 

and:

en:   activerecord:     attributes:       foo:         bar:           bar_attr: "test" 

but no matter what, when call foo::bar.human_attribute_name("bar_attr") parent app, "bar attr" (e.g. default human attribute name). note same problem occurs foo::bar.model_name.human when try translations using:

en:   activerecord:     models:       ... 

i'm not sure if app/engine structure relevant, i've tried above 3 en.yml formats within parent app's translations file too, no luck.

what missing these model names/attributes translate correctly?

it took bit of searching found answer in question inheriting rails i18n validation error messages in subclass trying i18n working activerecord in rails engine.

based on example above, answer like,

en:   activerecord:     attributes:       foo/bar:         bar_attr: "test" 

Comments

Popular posts from this blog

c# - SelectList with Dictionary, add values to the Dictionary after it's assigned to SelectList -

how can i manage url using .htaccess in php? -

ios - I get the error Property '...' not found on object of type '...' -