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

gat*_*ath 10 django

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

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

希望很清楚!

迦特.

cul*_*rón 8

>>> from django.http import HttpRequest
>>> HttpRequest()
<HttpRequest
GET:{},
POST:{},
COOKIES:{},
META:{}>
Run Code Online (Sandbox Code Playgroud)

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


Ign*_*ams 6

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