Django1.7中文入门教程:[19]让views做实事
1、Django需求是HttpResponse.或者是异常处理。因为它非常方便,现在我们使用Django自己的数据库API,在前我们已经讲过一些了,这里我们是目标是一个新的index()view.让它显示系统中最近5条poll问题,并根据发布日期用逗号分隔。编辑:polls/views.py
![Django1.7中文入门教程:[19]让views做实事](https://exp-picture.cdn.bcebos.com/3aae2b4f50b8b43e6c56eefe7132939c2df71926.jpg)
2、这里有一个问题,页面豹肉钕舞设计是在view中使用的是硬编代码。如果你想改变页面的展现方式,你将必须重新编辑python代码。让我们使吹涡皋陕用Django的模板系统来分离python代码和设计。 在templates目录里创建一个polls子目录。再在polls目录里新建一个文件index.html。换句话说,模板在:polls/templates/polls/index.html。因为app_directories模板怎样加载工作在上面已经描述。你可以参考Django的下面的模板:polls/templates/polls/index.html
![Django1.7中文入门教程:[19]让views做实事](https://exp-picture.cdn.bcebos.com/def3c219ce2c5b1bd3534d682b39131fcfec0e26.jpg)
3、现在我们要更新一下polls/views.py里面的index方法,以便使用模板。
![Django1.7中文入门教程:[19]让views做实事](https://exp-picture.cdn.bcebos.com/edd84743040148fec7cfe4df8fd149299b880226.jpg)
4、上面的代码加载模板调用:polls/index.html.并且传递它的内容。内容是一个python对象模板变量的字典映射。通过在你的浏览器里的“/polls/”加载页面,你将可以看到页面显示的内容。并且超链接到detail页面。加载一个模板是一个非常常用的词,填充内容返回一个HttpResponse对象的结果返回渲染模板。Django提供了一个简短的方法。下面我们在view重新写一下index()方法:
![Django1.7中文入门教程:[19]让views做实事](https://exp-picture.cdn.bcebos.com/e9a4f2eeadbcbe2fa4fdffac54dae43b3a867826.jpg)
5、NOTE:一旦我们像这样完成了views里面的内容,就不再需要珑廛躬儆导入loader,RequestContext和HttpResponse,不过在这里,我们还要保持HttpResponse,因为detail,results,vote方法还需要使用。render()方法使用request对象做为它的第一个参数,模板名字为第二个参数,在这里使用的是:“/polls/index.html”,一个字典做为第三个参数。它返回一个渲染好的内容的模板的HttpResponse对象