Fixed #23114 -- Clarified documentation of template lookups.

Thanks to gmunumel and Tom Dalton for their help on the patch.
This commit is contained in:
Baptiste Mispelon 2014-07-29 10:54:11 +02:00
parent d6e73a876d
commit 62c74abbb0
1 changed files with 8 additions and 6 deletions

View File

@ -95,13 +95,15 @@ Use a dot (``.``) to access attributes of a variable.
following lookups, in this order: following lookups, in this order:
* Dictionary lookup * Dictionary lookup
* Attribute lookup * Attribute or method lookup
* Method call * Numeric index lookup
* List-index lookup
This can cause some unexpected behavior with objects that override If the resulting value is callable, it is called with no arguments. The
dictionary lookup. For example, consider the following code snippet that result of the call becomes the template value.
attempts to loop over a ``collections.defaultdict``::
This lookup order can cause some unexpected behavior with objects that
override dictionary lookup. For example, consider the following code snippet
that attempts to loop over a ``collections.defaultdict``::
{% for k, v in defaultdict.iteritems %} {% for k, v in defaultdict.iteritems %}
Do something with k and v here... Do something with k and v here...