django - i18n - создать перевод, но использовать его позже?
Я хочу использовать строку, которая еще не используется. так что нет никакого {% trans 'word_I_want_to_use' %}
ни в шаблоне, ни во взглядах / моделях пока.
я могу просто создать его в views.py?
from django.utils.translation import ugettext as _
_("word_I_want_to_use")
а также makemessages
а также compilemessages
,
и позже я поставлю {% trans 'word_I_want_to_use' %}
в шаблоне.
это будет работать?
1 ответ
Решение
Да. Это будет работать. Вы также можете использовать отложенный перевод, чтобы не влиять на производительность неиспользованного перевода:
from django.utils.translation import ugettext_lazy as _
_("word_I_want_to_use")
Кроме того, вы можете использовать ugettext_noop
только для перевода, но никогда напрямую не используя строку. Это зависит от ваших планов и варианта использования.