我是python和flask的新手。我想使用flask-restplus。在使用flask restplus时,我无法使用"flask run“命令启动我的应用程序。但是,当我将它作为模块"python3 -m flask run“运行时,它确实启动了。我的第一个问题是,将其作为模块启动与以正常方式启动有什么不同吗?其次,在这种情况下,它没有以"flask run“开头的原因是什么?我是不是漏掉了什么?
下面是一个使用flask restplus的简单示例应用程序:
from flask import Flask
from flask_restplus import Resource, Api
app = Flask(__name__) # Create a Flask WSGI application
api = Api(app) # Create a Flask-RESTPlus API
@api.route('/hello') # Create a URL route to this resource
class HelloWorld(Resource): # Create a RESTful resource
def get(self): # Create GET endpoint
return {'hello': 'world'}
if __name__ == '__main__':
app.run()下面是flask run命令的输出:
(venv) ~/C/e/s/testpython ❯❯❯ flask run
* Serving Flask app "app.py"
* Environment: local
* Debug mode: off
Usage: flask run [OPTIONS]
Error: While importing "app", an ImportError was raised:
Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/flask/cli.py", line 235, in locate_app
__import__(module_name)
File "/Users/rajatarora/Code/eon/sales-plus/testpython/app.py", line 2, in <module>
from flask_restplus import Resource, Api
ModuleNotFoundError: No module named 'flask_restplus'以及使用"python3 -m flask run“命令的输出:
(venv) ~/C/e/s/testpython ❯❯❯ python3 -m flask run ✘ 2
* Serving Flask app "app.py"
* Environment: local
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)当然已经安装了flask resplus。这是pip freeze的输出
(venv) ~/C/e/s/testpython ❯❯❯ pip freeze
aniso8601==8.0.0
attrs==19.3.0
Click==7.0
Flask==1.1.1
flask-restplus==0.13.0
importlib-metadata==0.23
itsdangerous==1.1.0
Jinja2==2.10.3
jsonschema==3.2.0
MarkupSafe==1.1.1
more-itertools==7.2.0
pyrsistent==0.15.5
pytz==2019.3
six==1.13.0
Werkzeug==0.16.0
zipp==0.6.0发布于 2019-11-19 19:52:15
未安装flask-restplus模块。您可以从virtualenv环境中安装它,也可以在本地安装(不推荐,“但这是您的选择”)。
pip install flask-restplus
# To see if module is installed
pip freeze有关intall flask-restplus的信息链接是
[https://flask-restplus.readthedocs.io/en/stable/installation.html][1]发布于 2019-11-20 05:36:58
在命令行上:如果windows:set FLASK_APP=app.py,请尝试,然后运行flask run命令。
https://stackoverflow.com/questions/58932753
复制相似问题