templatetags
1.在app中创建templatetags模块(必须的)
2.创建任意 .py 文件,如:first_tags.py
from django.utils.safestring import mark_safe
from django.template import Library
register = Library()#register的名字是固定的,不可改变
# simple_tag能够对传入多个参数有效
@register.simple_tag
def methodtag(v1,v2):
return v1+v2
# filter只能对一个参数传入有效,调用到时候这样用
#{{ xx.line | ljf_power}}
@register.filter
def methodtag2(v1):
return v1.lower()
3.在使用自定义simple_tag和filter的html文件中导入之前创建的 first_tags.py :{% load first_tags %}
4.调用
{{ xxx | methodtag2 }}
<h2>{% methodtag 1 2 %}</h2>
5.在settings中的INSTALLED_APPS配置当前app,不然django无法找到自定义的simple_tag
extend
表示模板继承
include
模板中出现相同的代码
{% block content %} {% endblock %}