django.template.Library.assignment_tag()
Deprecated since version 1.9: simple_tag
can now store results in a template variable and should be used instead.
To ease the creation of tags setting a variable in the context, Django provides a helper function, assignment_tag
. This function works the same way as simple_tag()
except that it stores the tag’s result in a specified context variable instead of directly outputting it.
Our earlier current_time
function could thus be written like this:
@register.assignment_tag def get_current_time(format_string): return datetime.datetime.now().strftime(format_string)
You may then store the result in a template variable using the as
argument followed by the variable name, and output it yourself where you see fit:
{% get_current_time "%Y-%m-%d %I:%M %p" as the_time %} <p>The time is {{ the_time }}.</p>
Please login to continue.