Template Tags¶
synopsis: | Template Tags in django-boost |
---|
Python built-in functions¶
Make Python built-in functions available in DjangoTemplate.
Some non-built-in functions are also provided as filters.
An example is isiterable
filter.
Usage¶
{% load boost %}
isiterable¶
isiterable
filter returns True if it filters repeatable objects, and False otherwise.
{% load boost %}
{% if object|isiterable %}
{% for i in object %}
<p>{{ i }}</p>
{% endfor %}
{% else %}
<p>{{ object }}</p>
{% endif %}
literal¶
Python literal from string.
Using backend ast.literal_eval
.
{% load boost %}
{% literal "[1, 2, 3]" as list %}
{% for i in list %}
<p>{{ i }}</p>
{% endfor %}
chain¶
Concatenate iterable objects
{% load boost %}
{% chain list1 list2 as concatenated_list %}
{% for i in concatenated_list %}
{{ i }}
{% endfor %}
chunked¶
Break iterable into lists of length n
{% load boost %}
{% for i in list|chunked:3 %}
{% for j in i %}
{{ j }}
{% endfor %}
{% endfor %}
URL Utility¶
Usage¶
{% load boost_url %}
urlencode¶
URL encode the filtered string. You can specify non-conversion characters in the argument.
{% load boost_url %}
{{ url | urlencode }}
{{ url | urlencode:'abc' }}
replace_parameters¶
Replace the query string of the current page URL with the argument.
{% load boost_url %}
{# case of current page's query string is `?id=2`#}
{% replace_parameters request 'id' 1 'age' 20 %}
{# The result of replacing is `?id=1&age=20` #}
Useful for pagination.
get_querystring¶
return querystring value
{% load boost_url %}
{% get_querystring request 'id' %}
{# return request.GET.get('id', None) #}
Queryset Utility¶
Usage¶
{% load boost_query %}
Make the query set methods available in the template.
filter
, exclude
, order_by
are available.
If you use the LogicalDeletionMixin, you can also use alive
and dead
{% qureyset|filter:"field=value"%}
{% qureyset|exclude:"field=value"%}
{% qureyset|order_by:"field"%}
{# If it inherits LogicalDeletionMixin. #}
{% qureyset|alive %}
{% qureyset|dead %}
MimeType Utility¶
Usage¶
{% load mimetype %}
mimetype¶
Guess mimetype from the extension at the end of the string.
Python mimetypes.guess_type
is used internally.
{{ "json"|mimetype }} {# "application/json" #}
{{ ".json"|mimetype }} {# "application/json" #}
{{ "sample.json"|mimetype }} {# "application/json" #}