Как создать перевод значения "timesince"?(тег шаблона) - PullRequest
2 голосов
/ 01 сентября 2009

Я просматриваю документы, но я потерян ... какая-то проблема с ним:

{% load i18n %}
{% blocktrans %}
{{ wpis.entry.lastChangeDate|timesince }}
{% endblocktrans %}

Поднять:

`KeyError: u'wpis.entry.lastChangeDate | timesince'`

Конечно, без блоктранса все отлично работает.

Итак, как проще всего перевести несколько слов? (Мне интересен польский язык, минуты -> минуты, часы -> годзин и т. Д.) Буду благодарен за наглядный пример.

EDIT: в моем .po файле у меня сейчас:

#: templates/part.html:37 
#, python-format 
msgid "" 
"\n" 
"%(lastChangeDate)s\n" 
msgstr "" 

и я не вижу ничего о var в документах ... теперь я бы сделал:

msgid "hours" 
msgstr "godzin" 

и т. Д. И привязать его к моей переменной (приведенный выше пример не работает ...)

Ответы [ 2 ]

2 голосов
/ 01 сентября 2009
{% load i18n %}
{% blocktrans with wpis.entry.lastChangeDate|timesince as lastChangeDate %}
{{ lastChangeDate }}
{% endblocktrans %}

Подробнее см. http://docs.djangoproject.com/en/dev/topics/i18n/#in-template-code.

1 голос
/ 18 августа 2011

Просто используйте {{ var|timesince }} и убедитесь, что в settings.py для LANGUAGE_CODE задан ваш язык и что USE_I18N равно True.

Вам не нужно использовать blocktrans или иметь собственные переводы в .po файле для этого, он уже включен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...