Django fuzzy string translation не отображается
-
Почему иногда я получаю элемент fuzzy
в языковом файле django.po
. На самом деле, я проверил в своем проекте строковый элемент fuzzy
полностью уникален.
#: .\users\views.py:81 .\users\views.py:101
#, fuzzy
msgid "username or email"
msgstr "9988"
-
Это нормально быть нечетким, но мой перевод нечеткого элемента, который не отображается на странице, появляется только английская версия. Это совершенно странно.
Ответы
Ответ 1
-
msgmerge
маркирует строки как fuzzy
, если старый каталог имел перевод для строк с похожим видом msgid
. Он также переносит строки, помеченные как нечеткие от старого каталога к новому.
-
msgfmt
исключает нечеткие сообщения из скомпилированного каталога, поскольку переводы, вероятно, неверны. Переводчик должен проверить правильность перевода (в том случае, если вы опубликовали, пустая строка явно неверный перевод) и удалить знак fuzzy
при проверке перевода. Если вы абсолютно хотите использовать нечеткие переводы, пропустите `` `--use-fuzzy to
msgfmt`.
Ответ 2
У меня также были эти проблемы, и я решил их всех, используя "редактор po" (например, poedit), который выделяет нечеткие и нетранслируемые и делает процесс перевода намного быстрее.
Вы также можете использовать Django Rosetta, чтобы интегрировать процесс перевода в среду Django.