У меня есть страница с брендами, тегами, комментариями и продуктами. Время выходить на международный уровень
и у меня есть вопрос о том, как настроить I18n.
Я прочитал кое-что о Интернализации и даже попробовал гем глобализации
1 год назад, но я все еще не знаю, как справиться с этим.
Я перевожу статический текст на мою веб-страницу, используя красивый I18n.translate ()
метод хранения каждого статического и полустатического текста в другом файле .yml. Эта проблема
приходит, когда пытаешься отслеживать отношения в зависимости от языка.
Прежде чем приступить к решению проблемы, я покажу вам свою схему / модели базы данных.
Обратите внимание, что ни одна из моделей еще не имеет переменной локали.
Модели и схемы
Продукт
принадлежит_: категория
has_many: теги
has_many: теги,: through =>: теги
has_many: комментарии
- имя: строка
- Описание: Текст
Комментарий
принадлежит_продукту:: counter_cache => true
- автор: строка
- Комментарий: Текст
Марка
has_many: продукты
Tagging
own_to: tag
принадлежат: продукт
Tag
has_many: теги
has_many: products,: through =>: теги
Проблемы
перевод полей
Чтобы перевести отдельные поля, такие как название тега или описание продукта,
можно использовать гем globalize2 с отдельной таблицей перевода или
любой другой драгоценный камень с той же функцией.
comments_count
Comments_count для продуктов покажет общую сумму
комментариев, а не для конкретного языка.
теги / теги
При выполнении product.first.tags будут показаны все теги
независимо от текущей локали. Одним из решений этой проблемы может быть
быть положить поле языка в таблице тегов, но я думаю, там
это плагины или гемы для этого?
Фирменное наименование является международным и не меняется в зависимости от языка.
Мне нужен совет от кого-то, кто знает, как правильно обращаться с приложениями I18n, и вопрос прост: как решить вышеуказанные проблемы? Все ответы приветствуются.