summaryrefslogtreecommitdiff
path: root/docs/templates_python.txt
diff options
context:
space:
mode:
authorJoseph Kocherhans <joseph@jkocherhans.com>2007-09-25 00:08:38 +0000
committerJoseph Kocherhans <joseph@jkocherhans.com>2007-09-25 00:08:38 +0000
commit609eaf130d2d9eac109aefa59bfced32b67b9eb1 (patch)
treeb8bf4fd18c0fe75a418525baefa485c5ce31ce2f /docs/templates_python.txt
parentafb8f0a61969dff6450cd296be5eac2a5693ecd9 (diff)
newforms-admin: Merged to [6416]
git-svn-id: http://code.djangoproject.com/svn/django/branches/newforms-admin@6417 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'docs/templates_python.txt')
-rw-r--r--docs/templates_python.txt34
1 files changed, 30 insertions, 4 deletions
diff --git a/docs/templates_python.txt b/docs/templates_python.txt
index 232f54061f..b6173ad39a 100644
--- a/docs/templates_python.txt
+++ b/docs/templates_python.txt
@@ -928,10 +928,36 @@ current context, available in the ``render`` method::
``resolve_variable`` will try to resolve ``blog_entry.date_updated`` and then
format it accordingly.
-.. note::
- The ``resolve_variable()`` function will throw a ``VariableDoesNotExist``
- exception if it cannot resolve the string passed to it in the current
- context of the page.
+.. admonition:: New in development version:
+
+ Variable resolution has changed in the development version of Django.
+ ``template.resolve_variable()`` is still available, but has been deprecated
+ in favor of a new ``template.Variable`` class. Using this class will usually
+ be more efficient than calling ``template.resolve_variable``
+
+ To use the ``Variable`` class, simply instantiate it with the name of the
+ variable to be resolved, and then call ``variable.resolve(context)``. So,
+ in the development version, the above example would be more correctly
+ written as:
+
+ .. parsed-literal::
+
+ class FormatTimeNode(template.Node):
+ def __init__(self, date_to_be_formatted, format_string):
+ self.date_to_be_formatted = **Variable(date_to_be_formatted)**
+ self.format_string = format_string
+
+ def render(self, context):
+ try:
+ actual_date = **self.date_to_be_formatted.resolve(context)**
+ return actual_date.strftime(self.format_string)
+ except template.VariableDoesNotExist:
+ return ''
+
+ Changes are highlighted in bold.
+
+Variable resolution will throw a ``VariableDoesNotExist`` exception if it cannot
+resolve the string passed to it in the current context of the page.
Shortcut for simple tags
~~~~~~~~~~~~~~~~~~~~~~~~