python--- templatetags、extend、include

270 阅读1分钟

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 %}