Как сделать «вложенную» строку перевода в шаблоне Django? - PullRequest
1 голос
/ 27 мая 2010

Вот фраза, которую я должен сделать переводимой:

Poll ends in 2 hours 23 minutes

Эта строка должна иметь основную фразу, а также «час» и «минута» в единственном и множественном числе.

{% blocktrans %}Poll ends in {{ poll.expire_hours }} ??? {{ poll.expire_minutes }} ???{% endblocktrans %}

Что я тогда поставлю вместо ????


Решение: сделал простой тег, который принимает такие параметры:

{% readable_interval _('Poll ends in %s') poll.expire %}

и внутри него преобразует poll.expire (timedelta) в читаемый текст («X дней» / «N часов и М минут» / «N часов» / «М минут» / «Менее минуты» ). Все строки, закодированные в коде тега, i18-ized.

1 Ответ

2 голосов
/ 27 мая 2010

Этот тип струн принесет вам боль, если вы попытаетесь его обрисовать таким способом. Напишите для него шаблон тега .

...