2013-07-12 17 views

risposta

13

Da Django Docs

Trans tag template

La {%% trans } Il tag template traduce una stringa costante (racchiusa tra virgolette singole o doppie) o variabile:

Con un tag Trans, si è limitati a una singola stringa costante o variabile. Così si dovrebbe usare

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

Ma non era possibile utilizzare

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

Blocktrans mascherina modifica

Contrariamente al tag trans, il tag blocktrans consente di contrassegnare frasi complesse composto da letterali e contenuto variabile per la traduzione utilizzando i segnaposto:

Con un Blocktrans, questo tipo di codice è possibile:

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

Così Blocktrans sta per consentire di essere un po 'più complesso e attraverso la vostra uscita.

Ma per rispondere alla tua domanda letteralmente: non molto. Fatta eccezione per lo stile di presentazione, entrambi saranno inviati al traduttore come la stringa 'My Text'

+0

Perfetto. Penso che il problema sia stato il modo in cui le variabili vengono gestite nei tag. Non avevo realizzato che il tag trans non potesse combinare variabili e stringhe. Grazie! – tzenderman

+0

gli svantaggi dell'uso di blocktrans per entrambi? – dietbacon

+0

No. È puramente una questione di preferenza. – JcKelley