Ответ 1
Django - это просто Python, поэтому вы можете напрямую использовать привязки gettext Python, если вам нужно, я не вижу причин, по которым вы не могли бы написать тег {% gender_trans [gender]%}.
Мне нужно решить проблему перевода по полу, и Django, похоже, не выполнил контексты gettext...
Мне нужно перевести с английского:
<p>Welcome, {{ username }}</p>
В двух формах испанский, по одному для каждого пола. Если пользователь является мужчиной:
<p>Bienvenido, {{ username }}</p>
и если есть женщина:
<p>Bienvenida, {{ username }}</p>
Обратите внимание на разницу (bienvenido/bienvenida)
Есть ли способ сделать это?
Спасибо,
Н.
Django - это просто Python, поэтому вы можете напрямую использовать привязки gettext Python, если вам нужно, я не вижу причин, по которым вы не могли бы написать тег {% gender_trans [gender]%}.
Способ, которым я решил это:
{% if profile.male %}
{% blocktrans with profile.name as male %}Welcome, {{ male }}{% endblocktrans %}
{% else %}
{% blocktrans with profile.name as female %}Welcome, {{ female }}{% endblocktrans %}
{% endif %}
Ожидая, что контексты будут поддерживаться, простой альтернативой может быть небольшое изменение испанского предложения и использование приветствия, которое не меняется в зависимости от пола человека. Например, вы можете использовать "hola" или какой-либо другой эквивалентный термин.