【发布时间】:2011-01-07 01:28:13
【问题描述】:
所以我将 Django 与 Google App Engine 一起使用,并且我有一个 urls.py 文件,该文件将每个 url 重定向到相应的方法。这些方法中的每一个都作为参数之一自动传递“请求”,我相信这是一个 HttpRequest 对象。
如何从我的代码中创建这个填充的请求对象?例如,如果我在代码深处的某个方法中,我希望能够访问这个请求对象,而不必将它传递给每个函数以确保它可用。假设urls.py调用了foo方法,我目前的做法是:
foo(request):
# stuff here
bar(request)
# more stuff here
bar(request):
# stuff here<stuff>
baz(request)
# more stuff here
baz(request):
do something with request here
这似乎是错误的,因为我必须通过不需要它的函数传递请求,以便我可以在 baz 中使用它。
我想做这样的事情:
foo(request):
# stuff here
bar()
# more stuff here
bar():
# stuff here
baz()
# more stuff here
baz():
request = HttpRequest()
do something with request here
即如果我不需要,请不要传递请求。但是,做 request = HttpRequest() 返回一个空的请求对象...我想要的是一个完全填充的版本,就像从 urls.py 调用的每个方法中传递的一样。
我在这里浏览了 HttpRequest 的文档: http://docs.djangoproject.com/en/dev/ref/request-response/ 但没有看到方法。
任何想法将不胜感激。
谢谢, 瑞恩
【问题讨论】:
标签: django google-app-engine request httprequest