Django的学习(二)————Templates

本文深入探讨Django框架中的模板系统,包括直接映射和通过DTL(Django模板语言)实现的方式,以及如何处理多个应用中同名HTML文件的问题。

一、django的模板:

在settings.py的文件中可以看到并设置这个模板。

 

1.直接映射:

通过建立的文件夹(templates)和文件(html)来映射。

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Title</title>
 6 </head>
 7 <body>
 8   <h1>Hello World!</h1>
 9 </body>
10 </html>
1 from django.shortcuts import render
2 from django.http import HttpResponse
3 
4 # Create your views here.
5 
6 
7 def index(request):
8     return render(request, 'index.html', {"Jhy": "I love your!"})

 

2.通过DTL(django templates language)的实现方式:

在创建一个新的templates的文件夹,在新建一个html的文件。

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Title</title>
 6 </head>
 7 <body>
 8    <h1>{{Jhy}}</h1>
 9 </body>
10 </html>

在<h1>的标签中添加了关于render(渲染)的第三个参数的键值。

这个参数是一个dict的数据类型

1 def index(request):
2     return render(request, 'index.html', {"Jhy": "I love your!"})

其中render的第一个参数就是index的参数,第二个为templates的下的html文件,第三个就是通过dict的数据类型存储templates将要映射的东西。

 

3.注意:

当有两个应用的templates中相同名字的html文件时,django会根据添加的顺序来进行映射,解决方法:

建立一个和App同名的文件夹,将html文件放入该文件下。

 

转载于:https://www.cnblogs.com/future-dream/p/10380549.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值