[1.5.x] Fixed #20962 -- Documented that template tag render() may raise exceptions.

Thanks Keryn Knight for the report.

Backport of e077224f4a from master
This commit is contained in:
Bouke Haarsma 2013-10-14 14:43:55 +02:00 committed by Tim Graham
parent 5c1be8a870
commit 7f62d794b3
2 changed files with 7 additions and 2 deletions

View File

@ -236,6 +236,7 @@ answer newbie questions, and generally made Django that much better:
Janos Guljas Janos Guljas
Thomas Güttler <hv@tbz-pariv.de> Thomas Güttler <hv@tbz-pariv.de>
Horst Gutmann <zerok@zerokspot.com> Horst Gutmann <zerok@zerokspot.com>
Bouke Haarsma <bouke@haarsma.eu>
Antti Haapala <antti@industrialwebandmagic.com> Antti Haapala <antti@industrialwebandmagic.com>
Scot Hacker <shacker@birdhouse.org> Scot Hacker <shacker@birdhouse.org>
dAniel hAhler dAniel hAhler

View File

@ -495,8 +495,12 @@ Notes:
* The ``render()`` method is where the work actually happens. * The ``render()`` method is where the work actually happens.
* ``render()`` should never raise ``TemplateSyntaxError`` or any other * ``render()`` should generally fail silently, particularly in a production
exception. It should fail silently, just as template filters should. environment where :setting:`DEBUG` and :setting:`TEMPLATE_DEBUG` are
``False``. In some cases however, particularly if :setting:`TEMPLATE_DEBUG` is
``True``, this method may raise an exception to make debugging easier. For
example, several core tags raise ``django.template.TemplateSyntaxError``
if they receive the wrong number or type of arguments.
Ultimately, this decoupling of compilation and rendering results in an Ultimately, this decoupling of compilation and rendering results in an
efficient template system, because a template can render multiple contexts efficient template system, because a template can render multiple contexts