原创

Django学习第二课,研究基础模板以及返回设定

温馨提示:
本文最后更新于 2021年09月23日,已超过 1,172 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

上一课简单输进行的简单的内容返回使用HttpResponse

 
 

在真实的环境种我们使用丰富的html来进行,Django使用模板的形式来加载HTML

 
 

在应用APP下创建一个模板目录默认取名为templates,,然后创建模板文件,

Django学习第二课,研究基础模板以及返回设定-图片1

 
 

模板内容为如下

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>Django Template</title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<meta name="keywords" content="Django Template" />

<meta name="description" content="Django Template" />

</head>

<body>

<center>Django Template Learning.</center>

</body>

</html>

 
 

 
 

使用加载模板进行测试,修改views文件

Django学习第二课,研究基础模板以及返回设定-图片2

loader 加载模板

t.render() 把模板内容重组输出

 
 

访问查看效果

Django学习第二课,研究基础模板以及返回设定-图片3

 
 

 
 

这样就可以显示丰富的HTML页面了,但是页面内容肯定是变化了,我们不能去修改模板来实现吧,这里就要用到模板变量了

模板修改如下,把需要变化的内容添加变量

Django学习第二课,研究基础模板以及返回设定-图片4

 
 

调用时我们在去传递填充变量,把模板中的变量已字典形式重组进模板

Django学习第二课,研究基础模板以及返回设定-图片5

 
 

我们看到前台页面已显示成我们的想要的内容了

Django学习第二课,研究基础模板以及返回设定-图片6

 
 

我么也可以使用另外一种方式来写render_to_response ,效果也是一样的,代码精简了一点

# -*- coding: utf-8 -*-

 
 

from django.http import HttpResponse

from django.template import loader

from django.shortcuts import render_to_response

 
 

def index(req):

#t=loader.get_template('myapp.tmp')

c={'title':'My APP Home','text':'this is my app home page'}

return HttpResponse(render_to_response('myapp.tmp',c))

 
 

 
 

 
 

 

 
 

 
 

 
 

正文到此结束
本文目录