Browse Source

Improved the templated decorator in the documentation as recommended by Thadeus Burgess on the mailinglist

pull/112/head
Armin Ronacher 15 years ago
parent
commit
a3f78af870
  1. 6
      docs/patterns/viewdecorators.rst

6
docs/patterns/viewdecorators.rst

@ -120,7 +120,9 @@ As you can see, if no template name is provided it will use the endpoint
of the URL map with dots converted to slashes + ``'.html'``. Otherwise of the URL map with dots converted to slashes + ``'.html'``. Otherwise
the provided template name is used. When the decorated function returns, the provided template name is used. When the decorated function returns,
the dictionary returned is passed to the template rendering function. If the dictionary returned is passed to the template rendering function. If
`None` is returned, an empty dictionary is assumed. `None` is returned, an empty dictionary is assumed, if something else than
a dictionary is returned we return it from the function unchanged. That
way you can still use the redirect function or return simple strings.
Here the code for that decorator:: Here the code for that decorator::
@ -138,6 +140,8 @@ Here the code for that decorator::
ctx = f(*args, **kwargs) ctx = f(*args, **kwargs)
if ctx is None: if ctx is None:
ctx = {} ctx = {}
elif not isinstance(ctx, dict):
return ctx
return render_template(template_name, **ctx) return render_template(template_name, **ctx)
return decorated_function return decorated_function
return decorator return decorator

Loading…
Cancel
Save