2013-07-12 3 views

ответ

13

От Django Docs

Trans шаблонный тег

{% транс% } тег шаблона переводит либо константную строку (заключенную в одиночные или> двойные кавычки), либо содержимое переменной:

С тегом Trans вы ограничены одной постоянной строкой или переменной. Таким образом, вы должны использовать

{# These Would Work! #} 
title>{% trans "This is the title." %}</title> 
<title>{% trans myvar %}</title> 

Но не мог использовать

{%trans "This is my title {{ myvar }}" %} 

Blocktrans шаблонный тег

Противоположно к транс-тега, то blocktrans тег позволяет отметить сложные предложения , состоящий из литералов и переменного содержимого для перевода с использованием заполнителей:

С Blocktrans, этот вид кода можно:

{% blocktrans with book_t=book|title author_t=author|title %} 
     This is {{ book_t }} by {{ author_t }} 
    {% endblocktrans %} 

Так Blocktrans собирается, чтобы позволить вам быть немного более сложным и через в вашем выводе.

Но ответ на ваш вопрос буквально: не много. За исключением стиля презентации, оба будут отправлены переводчику в виде строки 'My Text'

+0

Perfect. Я думаю, что уловка для меня заключалась в том, как переменные обрабатываются в тегах. Я не понимал, что тэг trans не может смешивать переменные и строки. Благодаря! – tzenderman

+0

любой недостаток для использования blocktrans для обоих? – dietbacon

+0

Нет. Это чисто вопрос предпочтения. – JcKelley

 Смежные вопросы

  • Нет связанных вопросов^_^