В шаблонах Django, в чем именно разница между этими двумя:
{% blocktrans %}My Text{% endblocktrans %}
{% trans 'My Text' %}
В шаблонах Django, в чем именно разница между этими двумя:
{% blocktrans %}My Text{% endblocktrans %}
{% trans 'My Text' %}
Из Django Docs
Тег шаблона Trans
Тег шаблона {% trans %} переводит либо постоянную строку (заключенную в одинарные или >двойные кавычки), либо переменное содержимое:
С тегом Trans вы ограничены одной постоянной строкой или переменной. Таким образом, вам придется использовать
{# These Would Work! #}
title>{% trans "This is the title." %}</title>
<title>{% trans myvar %}</title>
Но не смог использовать
{%trans "This is my title {{ myvar }}" %}
Тег шаблона Blocktrans
В отличие от тега trans, тег blocktrans позволяет помечать для перевода сложные предложения, состоящие из литералов и переменного содержимого, с помощью заполнителей:
С Blocktrans такой код возможен:
{% blocktrans with book_t=book|title author_t=author|title %}
This is {{ book_t }} by {{ author_t }}
{% endblocktrans %}
Таким образом, Blocktrans позволит вам быть немного более сложным и сквозным в своем выводе.
Но если ответить на ваш вопрос буквально: не так уж и много. За исключением стиля представления, оба будут отправлены переводчику в виде строки 'My Text'