Где хранить переводы в микросервисной архитектуре - PullRequest
0 голосов
/ 11 января 2020

На сегодня у меня есть 2 приложения для микросервиса.

  • Первое - это внутреннее приложение, построенное с Django и Django Rest Framework.
  • Второе - это веб-приложение, созданное с помощью React.

Я храню некоторую информацию, которую необходимо перевести, в БД. Давайте, возможно, у меня есть таблица с именем "furniture_types" с одним столбцом имя. И данные состоят из 4 строк: "стул", "диван", "стол", "кровать".

В клиентской части я хочу отобразить переводы "furniture_types" на другие языки, например русский и украинский , И что я делаю, я храню файлы перевода на внешнем интерфейсе и использую интегрированные среды. Поэтому, если пользователь выбрал украинский, он увидит «стілець» вместо «стул» и т. Д.

Все работает хорошо, но я вижу две проблемы, решение которых до сих пор не решено.

  1. Я использую django admin и хочу, чтобы панель администратора и некоторые таблицы данных в панели администратора были переведены на русский язык. Я имею в виду, когда пользователь go для админки и хочет создать Орден в поле мебели типа увидит список опций на русском языке не так, как хранится в БД. (['стул', 'диван'] вместо ['стул', 'диван']).

  2. Следующая проблема, которую я вижу, заключается в том, что я хочу, чтобы пользователь мог искать данные на нескольких языках. Таким образом, независимо от того, в каком языке пользователь, набравший «стул», пользователь должен получить результаты поиска для «стула». Я еще не начал внедрять Serch, но я хочу go с https://drf-haystack.readthedocs.io/en/latest/index.html

Мои вопросы:

  1. Где лучше всего хранить переводы для меня?
  2. Стоит ли переводить перевод в бэкэнд? 2.1. Если да, то как их хранить? Должен ли я иметь новую таблицу "перевод". Или я должен просто предоставить новые поля в таблицу «Порядок», например name_ua, name_fr, name_ru?
  3. Как заставить поисковую систему искать на любом языке? Может быть, у вас есть другое предложение для поисковой системы, которое соответствует моим потребностям?
  4. Как отобразить данные для таблицы «Мебель» на определенном языке?

Спасибо большое! PS Я делаю перевод для интерфейса, описанного таким образом https://maksimivanov.com/posts/how-to-localize-react-application-using-react-intl/

...