如何在 Flask 中安装请求 class?
How do I install the request class in Flask?
如果重要的话,我会使用 PyCharm。每当我使用:
from flask import request
有效,没有错误。
但是每当我尝试使用 class 之类的东西时,
request.data
request.args
我明白了
raise RuntimeError('working outside of request context')
RuntimeError: working outside of request context
从 PyCharm 之外的命令行我得到,
>>> import flask.request
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named request
>>>
我看过这个和很多其他的,
How to get data received in Flask request
http://flask.pocoo.org/docs/0.10/api/#flask.request
None 的方法或属性在我尝试导入时存在。
我在 Windows 7 上使用虚拟环境。Flask 中的其他一切都运行良好。
Flask 为请求使用 代理对象。 import from flask import request
是正确的,但它本身并不代表请求。 flask.request
不是模块。
对 flask.request
的任何访问都会 为您查找 当前请求;这使得处理请求更简单,但这也意味着如果目前没有实际的 Web 请求正在进行,您不能只使用它。
您要么不得在实际为传入请求调用的视图之外使用它,要么需要显式创建 请求上下文。您可以使用 Flask.test_request_context()
method:
from flask import Flask, request
app = Flask(__name__)
with app.test_request_context('/foo/bar'):
print request.path # prints '/foo/bar'
所有这些都详尽地记录在 Flask Quickstart and in the Request Context 文档中。
你没有理解这一切。当您实际需要担心请求数据时,它会起作用,例如当浏览器连接到您的 Flask 应用程序并调用视图函数来呈现结果时,request
将正常工作。
如果重要的话,我会使用 PyCharm。每当我使用:
from flask import request
有效,没有错误。
但是每当我尝试使用 class 之类的东西时,
request.data
request.args
我明白了
raise RuntimeError('working outside of request context')
RuntimeError: working outside of request context
从 PyCharm 之外的命令行我得到,
>>> import flask.request
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named request
>>>
我看过这个和很多其他的,
How to get data received in Flask request
http://flask.pocoo.org/docs/0.10/api/#flask.request
None 的方法或属性在我尝试导入时存在。
我在 Windows 7 上使用虚拟环境。Flask 中的其他一切都运行良好。
Flask 为请求使用 代理对象。 import from flask import request
是正确的,但它本身并不代表请求。 flask.request
不是模块。
对 flask.request
的任何访问都会 为您查找 当前请求;这使得处理请求更简单,但这也意味着如果目前没有实际的 Web 请求正在进行,您不能只使用它。
您要么不得在实际为传入请求调用的视图之外使用它,要么需要显式创建 请求上下文。您可以使用 Flask.test_request_context()
method:
from flask import Flask, request
app = Flask(__name__)
with app.test_request_context('/foo/bar'):
print request.path # prints '/foo/bar'
所有这些都详尽地记录在 Flask Quickstart and in the Request Context 文档中。
你没有理解这一切。当您实际需要担心请求数据时,它会起作用,例如当浏览器连接到您的 Flask 应用程序并调用视图函数来呈现结果时,request
将正常工作。