Django开发(四)——Django的模板
2015-07-01 18:28
519 查看
在上一节中,我们在view.py文件中,编写返回的视图页面,这使逻辑代码和html代码耦合在一起,不利于项目的分工开发和后续的修改,并且,在view中也是很难对页面的形式进行控制的。
好在Django为我们提供了模板系统,也就是template,MTV中的T。Template可以将python代码嵌入在html代码中,并可以由view中的方法,想template中传递对象,最后,view中渲染该模板的方法,会将其返回给用户。
需要注意的是,我们需要在settings.py文件中,对模板文件的存放路径做一些设置,我是将template文件夹放在项目根目录下的
下面给出一个view中方法渲染并返回template例子
template文件
在此,view中的方法将一个包含若干个passage的list对象传给模板文件,模板文件中将list中的信息结合事先写好的html结合,得到最终的页面。
好在Django为我们提供了模板系统,也就是template,MTV中的T。Template可以将python代码嵌入在html代码中,并可以由view中的方法,想template中传递对象,最后,view中渲染该模板的方法,会将其返回给用户。
需要注意的是,我们需要在settings.py文件中,对模板文件的存放路径做一些设置,我是将template文件夹放在项目根目录下的
BASE_DIR = os.path.dirname(os.path.dirname(__file__)) TEMPLATE_DIRS = ( os.path.join(BASE_DIR, 'template/'), )
下面给出一个view中方法渲染并返回template例子
def getPassageList(request,type_id): type = get_object_or_404(PassageClass, pk=type_id) passagelist=type.passage_set.all(); return render(request, 'blog/passagelist.html', {'type': type,'passagelist':passagelist})
template文件
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>{{type.classname}}——漂泊的胡萝卜</title> </head> <body> <h1>漂泊的胡萝卜</h1> {% for passage in passagelist %} <li><a href="/passage/{{ type.id }}/{{passage.id}}">{{ passage.title }}</a></li> {% endfor %} </body> </html>
在此,view中的方法将一个包含若干个passage的list对象传给模板文件,模板文件中将list中的信息结合事先写好的html结合,得到最终的页面。
相关文章推荐
- Algorithms—168.Excel Sheet Column Title
- Algorithms—171.Excel Sheet Column Number
- Google API相关
- PyMongo基本使用
- django 模板路径
- Google推荐的图片加载库Glide介绍
- 使用Google-Authenticator加强服务器SSH登录
- 百度经纬度和google经纬度互转
- Solution to the problem of machine name becomes "bogon" in Mac
- django 实现 group by
- logo切图大小对应的尺寸
- RTB撕开黑盒子 Part 2: Algorithm Meets World
- RTB撕开黑盒子 Part 1: Datacratic's RTB Algorithms
- Just do it, as the Nike' logotype
- windows7 下配置Django1.5.12
- GC、(四)GC Algorithms: Implementations
- golang(3):beego CRUD demo (1)
- Google研究员Ilya Sutskever:成功训练LDNN的13点建议
- [算法导论]贪心算法(greedy algorithm)
- Google研究员Ilya Sutskever:成功训练LDNN的13点建议