举个例子,我有一个默认的英语本地化文件 "en.yml",它的内容如下:
en:
messages: messages
users: users
现在,有一个客户希望在他的产品中将消息命名为“讨论”,但用户仍应该保持为“用户”。因此我想创建一个名为“customer.en.yml”的文件。
en:
messages: discussions
如何在保留其他单词不变的情况下覆盖默认的"messages"翻译?我该如何实现呢?
因为如果我加载en.yml文件,会出现以下情况:
config.i18n.load_path += Dir[File.join(RAILS_ROOT, 'config', 'locales', '*.{rb,yml}')]
接着使用以下方式加载customer.en.yml文件(假设APP_CONFIG['customer_name']已经定义):
config.i18n.load_path += Dir[File.join(RAILS_ROOT, 'config', 'custom_locales', APP_CONFIG['customer_name']+'.{rb|yml}')]
它只会覆盖我的“en”本地化,而“users”翻译将消失,对吗?