什么是Templates(模板引擎)
简单来说,Django的模板引擎就是HTML文件,只是包含使用了一种特殊的模板语言(Django模板语言 Django Template Language),简称DTL。
如何加载第三方模板引擎
优秀的模板引擎远远不止这么一个,所以Django是支持开发者对其进行扩展/修改的,我们完全可以通过在settings.py配置文件中,修改TEMPLATES中的BACKEND选项,将模板引擎换成其他任何我们希望要用的。
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" %} 把制定的模板内容添加到当前模板中。
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!