У меня есть Rails Engine, использующий GEM Globalize:
- рельсы (5.0.7)
- глобализация (5.1.0)
Я добавил в свою модель следующее:
module IsWebEngine
class Website < ApplicationRecord
translates :name, :fallbacks_for_empty_translations => true
validates :name, presence: true
...
end
end
и добавили в application.rb следующее:
config.i18n.fallbacks = true
Я создал таблицу переводов, запустил миграцию и удалил столбец имени из исходной таблицы.
Я использую 2 языка: en и: de. Если я добавлю: en имя, например, «Английское имя» в таблицу перевода добавлено следующее содержание:
| tbl_id: 1 | locale: 'en' | name: 'English Name' |
Если я перейду к представлению с установленным языковым стандартом: en, я смогу увидеть имя «Английское имя», однако, если я переключу языковой стандарт на: de, имя пустое - я ожидал (как) его значение по умолчанию на Значение: en, если имя: de не существует.
Если я добавлю: de name:
| tbl_id: 1 | locale: 'de' | name: 'German Name' |
тогда «Немецкое имя» отображается в представлении, если задан: de locale.
Как мне получить откат, работающий с: en, когда: de не существует в таблице переводов?
Спасибо за любую помощь!
Jon.