Django----模板层

#django
1.模板层介绍:
实际的页面大多是带有样式的HTML代码,这可以让浏览器渲染出非常漂亮的页面。目前市面上有非常多的模板系统,其中最知名最好用的就是DTL和Jinja2。 DTL 是 Django Template Language 三个单词的缩写,也就是Django自带的模板语言。当然也可以配置Django支持Jinja2等其他模板引擎,但是作为Django内置的模板语言,和Django可以达到无缝衔接而不会产生一些不兼容的情况。

2.渲染模板的方法(render):

#导入render
from django.shortcuts import render
#定义一个视图函数
def index(request):
	#在视图函数中渲染一个名字叫index.html的模板
	return render(request,"index.html")

render方法用于将模板渲染到浏览器中

3.将变量传入模板中:
在render方法中有一个参数context,可以将视图函数中的参数传递到模板中

def index(request):
	context = "Hello flying!"
	#在视图函数中渲染一个名字叫index.html的模板
	return render(request,"index.html",context = context)

之后可以在模板中引用这个参数context

4.模板路径查找:
在项目的setting.py文件下有一个TEMPLATES的配置,这个配置包含的模板引擎的配置等。
1) DIRS :这是一个列表,在这个列表中可以存放所有的模板路径,以后在视图中使用 render 或者 render_to_string 渲染模板的时候,会在这个列表的路径中查找模板。
2) APP_DIRS :默认为 True ,这个设置为 True 后,会在 INSTALLED_APPS 的安装了的 APP 下 的 templates 文件加中查找模板。
3)查找顺序:比如代码 render(‘list.html’) 。先会在 DIRS 这个列表中依次查找路径下有没有这个模板,如果有,就返回。如果 DIRS 列表中所有的路径都没有找到,那么会先检查当前这个视图所处的 app 是否已经安装,如果已经安装了,那么就先在当前这个 app 下 的 templates 文件夹中查找模板,如果没有找到,那么会在其他已经安装了的app 中查找。如果所有路径下都没有找到,那么会抛出一TemplateDoesNotExist 的异常。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值