Существует тег шаблона {% blocktrans %}
, который вы можете использовать.
Вы также можете написать простой тег шаблона самостоятельно, который включает в себя шаблон anathor на основе текущего языка.
{% i18ninclude "faq/question1.html" "en" %}
будет включать faq/question1.en.html
. Вот код:
import os
from django import template
register = template.Library()
@register.simpletag
def i18ninclude(template_name, language):
template_name, extension = os.path.splitext(template_name)
template_name = '%s.%s%s' % (template_name, language, extension)
return template.loader.render_to_string(template_name)
Поместите это в библиотеку шаблонов вашего приложения. Я также рекомендую прочитать документацию о пользовательских тегах , если вы еще этого не сделали.