摘要:
当一个页面被请求时,django就会创建一个包含本次请求原信息的HttpRequest对象。 django会将这个对象自动传递给响应的视图函数,一般视图函数约定俗成地使用request参数承接这个对象。 1. 请求相关的常用值 path_info: 返回用户访问url, 不包括域名 method: 阅读全文
摘要:
1. 使用装饰器装饰FBV FBV本身就是一个函数,所以和给普通的函数加装饰器无差: 2. 使用装饰器装饰CBV 类中的方法与独立函数不完全相同,因此不能直接将函数装饰器应用于类中的方法,我们需要先将其转换为方法装饰器。 django中提供了method_decorator装饰器用于将函数装饰器转化 阅读全文
摘要:
编写视图 一个视图函数,或者简短来说叫做视图,是一个简单的Python函数,它接受web请求,并且返回web响应。 响应可以是一个网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片,任何东西都可以。 无论视图本身包含什么逻辑,都要返回响应。 代码写在哪里也无所谓,只要它在你 阅读全文
摘要:
我们之前写过的是基于函数的view,就叫FBV。还可以把view写成基于类的。 1. FBV版 2. CBV版 基于反射,实现根据请求方式不同,执行不同的方法。 原理: (1)路由:url view函数 dispatch方法(根据反射执行其他method方法) 使用CBV时要注意,请求过来后会先执行 阅读全文
摘要:
1. 模板系统的介绍 在这个例子视图中返回文本的方式有点特别,HTML直硬编码在Python代码之中。 尽管这种技术便于解释视图是如何工作的,但直接将HTML硬编码到你的视图里却不是一个好方法。原因如下: 对页面设计进行的任何改变都必须对Python代码进行相应的修改。站点设计的修改往往比底层Pyt 阅读全文
摘要:
即使不同的APP使用相同的URL名称,URL的命名空间模式也可以让你唯一反转命名的URL。 例如: project中的urls.py app01中的urls.py app02中的urls.py 现在,这两个app中的url名称是重复的,但是反转URL的时候就可以通过命名空间的名称得到当前的URL。 阅读全文