Это должно быть вполне выполнимо с вашим первым примером создания пользовательского кода локали.
Если вы настраиваете I18n для регистрации этой пользовательской локали и настраиваете запасной вариант для этой локали на базовом языке:
Rails.application.configure do
config.i18n.available_locales = %i[en es fr en-customer]
config.i18n.default_locale = :en
config.i18n.backend.class.send(:include, I18n::Backend::Fallbacks)
config.i18n.fallbacks.map('en-customer' => 'en')
end
Это должно позволить вам установить предпочтение для пользователей этой компании использовать пользовательский языковой стандарт, и вы можете создать файл yaml
для замены только тех ключей, которые вам нужны.
Вы также можете сделать это без отката, но вам придется скопировать весь язык, а затем применить свои изменения, которые могут быть сложнее управлять при изменении текста в вашем приложении, и более подвержены поломкам, если вы пропустите ключ.