Rails Globalize проблема с ошибками

У меня есть 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 не существует в таблице переводов?

Спасибо за любую помощь!

Джон.

0 ответов

Другие вопросы по тегам