Веб-приложение на основе Django, над которым я работаю, переведено на несколько разных языков. До сих пор мы использовали файлы gettext / PO для перевода статических файлов (текст в коде и шаблонах, статические страницы); Страницы и тексты CMS, хранящиеся в БД, переводятся через административные интерфейсы.
Эта стандартная настройка хорошо работает для нас, разработчиков, но не нравится нашим переводчикам, которые предпочли бы всегда использовать свои инструменты перевода (с файлами PO) вместо использования интерфейса администратора.
Теперь, когда все больше и больше нашего контента переносится из кода в базу данных, мы пытались использовать gettext для текстов, хранящихся в БД. Идея звучит неплохо, но рабочий процесс вокруг нее довольно громоздкий:
- Редактор меняет английский текст в админке
- Разработчик запускает команду для извлечения сообщений на хосте, который подключен к производственной БД.
- PO файл отправлен переводчикам
- После завершения перевода переводчик отправляет файл разработчикам.
- Разработчик компилирует файлы mo, проверяет их в кодовой базе и развертывает
Хотя некоторые шаги можно автоматизировать с помощью такой службы, как Transifex, я не посмотрим, как обойти последний шаг. Необходимость развертывания в результате изменения базы данных звучит неправильно.
Удалось ли кому-нибудь создать разумный рабочий процесс перевода на основе gettext для веб-приложений, который не требует развертывания?