Browse files

Fixed #5591: corrected info about variables in `trans` tag. Thanks, …


git-svn-id: bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
jacobian committed Aug 25, 2008
1 parent 744d882 commit f964a6e4723df9bbf9d22f0fbde3222f513b00e2
Showing with 11 additions and 9 deletions.
  1. +11 −9 docs/topics/i18n.txt
@@ -219,21 +219,23 @@ Translations in :ref:`Django templates <topics-templates>` uses two template
tags and a slightly different syntax than in Python code. To give your template
access to these tags, put ``{% load i18n %}`` toward the top of your template.
-The ``{% trans %}`` template tag translates a constant string or a variable
+The ``{% trans %}`` template tag translates either a constant string
+(enclosed in single or double quotes) or variable content::
<title>{% trans "This is the title." %}</title>
+ <title>{% trans myvar %}</title>
-If you only want to mark a value for translation, but translate it later from a
-variable, use the ``noop`` option::
+If the ``noop`` option is present, variable lookup still takes place but the
+translation is skipped. This is useful when "stubbing out" content that will
+require translation in the future::
- <title>{% trans "value" noop %}</title>
+ <title>{% trans "myvar" noop %}</title>
-It's not possible to use template variables in ``{% trans %}`` -- only constant
-strings, in single or double quotes, are allowed. If your translations require
-variables (placeholders), use ``{% blocktrans %}``. Example::
+It's not possible to mix a template variable inside a string within
+``{% trans %}``. If your translations require strings with variables (placeholders),
+use ``{% blocktrans %}``. Example::
- {% blocktrans %}This will have {{ value }} inside.{% endblocktrans %}
+ {% blocktrans %}This string will have {{ value }} inside.{% endblocktrans %}
To translate a template expression -- say, using template filters -- you need
to bind the expression to a local variable for use within the translation

0 comments on commit f964a6e

Please sign in to comment.