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

alex Alex笔记评论阅读模式

上一课简单输进行的简单的内容返回使用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))

 
 

 
 

 
 

 

 
 

 
 

 
 

文章末尾固定信息

 
alex
  • 本文由 alex 发表于 2017年9月23日 18:54:26
  • 转载请务必保留本文链接:https://www.qnjslm.com/ITHelp/274.html
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定