На сегодня у меня есть 2 приложения для микросервиса.
- Первое - это внутреннее приложение, построенное с Django и Django Rest Framework.
- Второе - это веб-приложение, созданное с помощью React.
Я храню некоторую информацию, которую необходимо перевести, в БД. Давайте, возможно, у меня есть таблица с именем "furniture_types" с одним столбцом имя. И данные состоят из 4 строк: "стул", "диван", "стол", "кровать".
В клиентской части я хочу отобразить переводы "furniture_types" на другие языки, например русский и украинский , И что я делаю, я храню файлы перевода на внешнем интерфейсе и использую интегрированные среды. Поэтому, если пользователь выбрал украинский, он увидит «стілець» вместо «стул» и т. Д.
Все работает хорошо, но я вижу две проблемы, решение которых до сих пор не решено.
Я использую django admin и хочу, чтобы панель администратора и некоторые таблицы данных в панели администратора были переведены на русский язык. Я имею в виду, когда пользователь go для админки и хочет создать Орден в поле мебели типа увидит список опций на русском языке не так, как хранится в БД. (['стул', 'диван'] вместо ['стул', 'диван']).
Следующая проблема, которую я вижу, заключается в том, что я хочу, чтобы пользователь мог искать данные на нескольких языках. Таким образом, независимо от того, в каком языке пользователь, набравший «стул», пользователь должен получить результаты поиска для «стула». Я еще не начал внедрять Serch, но я хочу go с https://drf-haystack.readthedocs.io/en/latest/index.html
Мои вопросы:
- Где лучше всего хранить переводы для меня?
- Стоит ли переводить перевод в бэкэнд? 2.1. Если да, то как их хранить? Должен ли я иметь новую таблицу "перевод". Или я должен просто предоставить новые поля в таблицу «Порядок», например
name_ua
, name_fr
, name_ru
? - Как заставить поисковую систему искать на любом языке? Может быть, у вас есть другое предложение для поисковой системы, которое соответствует моим потребностям?
- Как отобразить данные для таблицы «Мебель» на определенном языке?
Спасибо большое! PS Я делаю перевод для интерфейса, описанного таким образом https://maksimivanov.com/posts/how-to-localize-react-application-using-react-intl/