Django 模板(templates)引擎的使用
Django 模板引擎的使用
1.首先在项目下建立一个文件夹templates,储存各种模板
2.然后在settings.py 下添加模板
3.然后进入view.py 使用Django自带的模板渲染引擎
from django.shortcuts import render # 渲染模板
构建response对象
response = render(request,'index.html',context={ "value":"变量", })
context 将一个字典类型的数据传给 html页面 ,然后替换html页面中的变量 {{ value }}
这时,html页面中将会显示 --- 变量
模板引擎语法
注释{% comment %} {% endcomment %} 注释后的内容在网页源文件中不可见
变量打印
{{变量名}}假如没有给模板引擎传递响应的变量,那么该位置不显示任何数据
条件判断
{% if a == b %}{% elif a > b %}{% else %}{% endif %}变量逻辑判断必须以空格隔开
{% ifequal a b %}{% endifequal %}判断两个变量是否相等{% ifnotequal %}{% endifnotequal %}判断两个变量是否不相等
循环
{% for item in items %}
{% empty %} 假如循环的迭代对象没有元素,输入empty中内容
{% endfor %}
数据过滤
{{变量|过滤函数:参数}} 在变量打印之前,进一步处理,并且返回处理后的结果无参数过滤器{{变量|过滤函数}}
乘除法
{% widthratio a b c %} a是分子,b是分母,c分子 (a*c)/b
转义默认django中是把自动转义打开,如果需要关闭自动转义,{% autoescape off %}{% endautoescape %}
{% autoescape on %}{% endautoescape %}
静态资源
在settings.py中配置 STATICFILES_DIRS=[os.path.join(BASE_DIR,'static')]
在模板的顶部添加{% load static %}
使用:{% static 'css/index.css' %}
继承与block
{% extends 'base.html' %}
同名的{% block content %} 子模板自定的内容 {% endblock %}
包含
{% include "footer.html" %} 把制定的模板内容添加到当前模板中