Перевод Django: оцените, является ли строка переводом на любой доступный язык - PullRequest
0 голосов
/ 02 мая 2019

Я не могу найти способ определить, является ли данная строка (скажем, «xxxxxxxxxx») переводом определенной строки (скажем, «привет мир»), на любом доступном языке (на языки, на которые переведено мое приложение),Я ввел строку и хотел бы определить, является ли это переводом "hello world" на любом из моих доступных языков (тогда PO-файлы).Любая идея?

РЕДАКТИРОВАТЬ для контекста: приложение ранее экспортировало базу данных в фиксированном формате XLS, для будущего импорта.Во время импорта выполняется проверка форматирования и выдается сообщение об ошибке, если формат указан неверно.Эта проверка форматирования начинается с чтения названия вкладок.Если это хорошо -> тогда читается XLS, если не выдается ошибка.Во время этой первой проверки я хочу провести различие между (i) реальной ошибкой форматирования и (ii) пользователем, импортирующим XLS, ранее экспортированный на другом языке (но я не знаю, какой).Итак, у меня есть имя вкладки, и я просто хочу проверить, является ли это имя вкладки просто переводом имени вкладки по умолчанию: это позволило бы мне выдать другое сообщение об ошибке, предлагающее перейти на правильный язык для импорта.

1 Ответ

1 голос
/ 02 мая 2019

Я не думаю, что то, что вы пытаетесь сделать, достижимо с помощью django.(Почему вы хотите это сделать?)

Существует библиотека с именем polib.Он прекрасно обрабатывает файлы .po и .mo.Вы можете прочитать его документацию здесь .

Вы можете создать объект pofile с помощью

import polib

po = polib.pofile('<FILE_PATH>')

, а затем выполнить итерацию по нему следующим образом

for entry in po:
    msgid, msgstr = po.msgid, po.msgstr
    # you can do your comparison here
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...