diff options
Diffstat (limited to 'docs/templates_python.txt')
| -rw-r--r-- | docs/templates_python.txt | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/docs/templates_python.txt b/docs/templates_python.txt index efbd648cf1..9203b92f9c 100644 --- a/docs/templates_python.txt +++ b/docs/templates_python.txt @@ -135,14 +135,6 @@ Here are a few examples:: >>> t.render(c) "The first stooge in the list is Larry." -If a variable doesn't exist, the template system fails silently. The variable -is replaced with an empty string:: - - >>> t = Template("My name is {{ my_name }}.") - >>> c = Context({"foo": "bar"}) - >>> t.render(c) - "My name is ." - Method lookups are slightly more complex than the other lookup types. Here are some things to keep in mind: @@ -193,6 +185,28 @@ some things to keep in mind: self.database_record.delete() sensitive_function.alters_data = True +How invalid variables are handled +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In Django 0.91, if a variable doesn't exist, the template system fails +silently. The variable is replaced with an empty string:: + + >>> t = Template("My name is {{ my_name }}.") + >>> c = Context({"foo": "bar"}) + >>> t.render(c) + "My name is ." + +This applies to any level of lookup:: + + >>> t = Template("My name is {{ person.fname }} {{ person.lname }}.") + >>> c = Context({"person": {"fname": "Stan"}}) + >>> t.render(c) + "My name is Stan ." + +In the Django development version, if a variable doesn't exist, the template +system inserts the value of the ``TEMPLATE_STRING_IF_INVALID`` setting, which +is set to ``''`` (the empty string) by default. + Playing with Context objects ---------------------------- |
