我有一个可插拔的视图,定义如下
class ListView(View):
methods = ["GET", "POST"]
def __init__(self, model, template_name="list_view.html"):
self.model = model
self.template_name = template_name
def dispatch_request(self, *args, **kwargs):
if request.method == "GET":
objects = self.model.query.all()
return render_template(self.template_name,
objects=objects)
else:
#do post request
我正在尝试创建一个可插入的视图,它将同时处理get和post请求。当我尝试上述操作时,我得到以下错误
NameError: global name 'request' is not defined
根据Flask文档,请求应该出现在dispatch_request方法中,但不是我的情况。我正在使用Flask 0.10.1
答案 0 :(得分:3)
request
始终是全局上下文变量;你需要在模块中导入它:
from flask import request
见Quickstart documentation on accessing request data;对于可插入的视图,这没有什么不同。