Django中视图怎么用

这篇文章给大家分享的是有关Django中视图怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

成都创新互联是一家业务范围包括IDC托管业务,网页空间、主机租用、主机托管,四川、重庆、广东电信服务器租用,服务器机柜租赁,成都网通服务器托管,成都服务器租用,业务范围遍及中国大陆、港澳台以及欧美等多个国家及地区的互联网数据服务公司。

自定义视图

随着我们的Web站点页面越来越多,页面链接会越来越杂乱无章。因此有必要在项目一开始就对其进行管理。 
1) 实现/articles/123的效果 
urls.py文件可以这么写:

Django中视图怎么用

views.py实现了articles方法

Django中视图怎么用

这其中url()函数具有四个参数, regex和view是必填选项,kwargs和name是非必填选项 
regex: 正则表达式的缩写。Djaogo从第一个正则表达式开始,依次对请求url进行匹配,直到找到匹配到那个为止。 
view: 目标视图,即views.py文件中的函数。 
kwargs: 任何关键字参数都可以以字典形式传递给目标视图。 
name: 命名你的URL, 相当于给url取个别名。 这样就可以在Django的其它地方尤其是模板中,通过名称来明确地引用这个URL。 这个强大的特性可以使你仅仅修改一个文件就可以改变全局的URL模式。


模板

学到这里,你会许会有个疑问。web页面应该含有html代码的,为什么我没有看到html页面呢?我的web页面不能单单只是一句话,应该有导航栏,内容栏,底部栏吧。要满足这需求,则需要用到渲染模板的方法来显示内容。 


为了方便理解,引用以上篇文章的例子 
test目录下新建一个 templates 文件夹, 里面新建一个base.html 和 home.html 
新建base.html目的是为了代码复用。把一些通用的部分,例如导航,底部,访问统计代码等抽取出来封装成一个页面:nav.html、 bottom.html、 tongji.html。

Django中视图怎么用

我们的首页 home.html,继承或者说扩展(extends)原来的 base.html,可以简单这样写,重写部分代码(默认值的那一部分不用改)。代码如下:

Django中视图怎么用

url.py文件增加相对应的url函数就行,而views.py文件就需要改动了。 
使用render()函数载入一个模板进行渲染。 


该函数有三个参数,将请求对象作为它的第一个参数,模板的名字作为它的第二个参数,一个字典作为它可选的第三个参数。 它返回一个HttpResponse对象,含有用给定的context 渲染后的模板。

Django中视图怎么用

3
部署运行

view.py属于View层,是用于显示界面。但是在实际应用中,往往view的数据不是写死的,是由模型层传输过来的。怎么将model层传输过来数据显示在视图上呢?Django模板算是利器,它具有循环、条件判断、常用的标签、过滤器等功能,这能消除我们的刚才的烦恼。 


首先,我们应该知道两个知识点。分别是: 
1)标签的写法: 使用{% 标签 %}, 例如

Django中视图怎么用

2)变量的写法: 使用{{ 变量 }}, 例如

Django中视图怎么用

补充知识 
1)在for循环中还有很多有用的东西,如下:

变量描述
forloop.counter索引从 1 开始算
forloop.counter0索引从 0 开始算
forloop.revcounter索引从最大长度到 1
forloop.revcounter0索引从最大长度到 0
forloop.first当遍历的元素为第一项时为真
forloop.last当遍历的元素为最后一项时为真
forloop.parentloop用在嵌套的 for 循环中,获取上一层 for 循环的 forloop

2)如果想表示空值,代码如下

Django中视图怎么用

感谢各位的阅读!关于“Django中视图怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


本文名称:Django中视图怎么用
链接地址:http://azwzsj.com/article/ihipio.html