django中的哪个函数创建了一个HttpRequest实例并交给了一个视图?

时间:2010-11-12 07:21:57

标签: django

我试着理解django的胆量,我无法得到任何好的教程。

我知道django视图在调用它们时接收一个HttpRequest实例作为参数之一,我想知道的是django internals中的哪个函数从浏览器接收请求,创建HttpRequest实例并将其移交给正确的看法?

希望很清楚!

加特。

2 个答案:

答案 0 :(得分:8)

>>> from django.http import HttpRequest
>>> HttpRequest()
<HttpRequest
GET:{},
POST:{},
COOKIES:{},
META:{}>

如果您需要这个来测试和模拟请求,那很好,但是如果您尝试使用它来相互调用视图,则效率很低。

答案 1 :(得分:6)

django.core.handlers.base.BaseHandler负责通过中间件发送请求,然后再发送到视图。 django.core.handlers中的具体处理程序实际上是首先生成请求对象的。