Django NameError:未定义名称“请求”

时间:2011-08-21 17:50:37

标签: django

我导入了这些模块:

from django.http import HttpResponseRedirect
from django.shortcuts import render_to_response

然后我尝试像这样调用一个类:

sh = MyClass(request.FILES['img'])
sh.read_image()

但是它会抛出错误“NameError:name'request'未定义”,但我不明白为什么,因为我已经导入了必要的模块。

2 个答案:

答案 0 :(得分:5)

你在哪里上课?如果您想要访问request,您通常必须在视图中,如下所示:

def my_view(request):
    sh = MyClass(request.FILES['img'])
    sh.read_image()
    return render_to_response('template.html')

答案 1 :(得分:1)

这些导入语句都没有使用名称“request”,因此您无法导入该名称。

在任何情况下,请求都不是您导入的内容,而是传递给每个视图的内容。如果您的代码在视图之外,则需要将请求传递给它。