Как избежать символа '%' в jinja 2.10 {% trans%}, используя pybabel? - PullRequest
0 голосов
/ 12 июня 2018

Я использую jinja 2.10 и pybabel.Когда мой шаблон содержит следующий код (с символом '%' внутри блока trans), pybabel-compile не переводит строку.Извлеченная строка (в .po) в порядке, но на странице результатов она вообще не переводится.

<h3 class="title">{% trans %}100% anonymity{% endtrans %}</h3>

Этот код работает, но транссинтаксис выглядит лучше:

<h3 class="title">{{ _("100%% anonymity") }}</h3>

Также я не могу беспокоить моих коллег-переводчиков, используя «%%» вместо «%».

1 Ответ

0 голосов
/ 04 сентября 2018

Я тоже придерживался этого, но я нашел в Babel документацию решение:

##flask.ext.babel.gettext(string, **variables)##
##Translates a string with the current locale and passes in the given keyword arguments as mapping to a string formatting string.

gettext(u'Hello World!')
gettext(u'Hello %(name)s!', name='World')

И я перевожу на простой код, подобный этому:

_('Hello %(name)s!', name='World%')

Надеюсь, я вам помогу: D

...