【问题标题】:flask_restful import Resource errorflask_restful 导入资源错误
【发布时间】:2018-07-23 09:51:28
【问题描述】:

我在 youtube 上做了以下教程:https://www.youtube.com/watch?v=s_ht4AKnWZg

这是我的代码:

from flask import Flask, request
from flask_restful import Resource, Api

app = Flask(__name__)
api = Api(app)

class HelloWorld(Resource):
    def get(self):
        return {'about':'Hello World!'}

    def post(self):
        some_json = request.get_json()
        return {'you sent': some_json}, 201

class Multi(Resource):
    def get(self, num):
        return {'result': num*10}

api.add_resource(HelloWorld, '/')
api.add_resource(Multi, '/multi/<int:num>')

if __name__ == '__main__':
    app.run(debug=True)

现在当我运行脚本时,出现以下错误:

/home/one/systemx/test_api$ python flask_restful.py
Traceback (most recent call last):
  File "flask_restful.py", line 2, in <module>
    from flask_restful import Resource, Api
  File "/home/one/systemx/test_api/flask_restful.py", line 2, in <module>
    from flask_restful import Resource, Api
ImportError: cannot import name Resource

代码是 1:1,就像视频中一样。有人知道问题出在哪里吗?

【问题讨论】:

  • 你有没有叫flask_restful的文件,可能会引起冲突

标签: python flask flask-restful


【解决方案1】:

正如@tobey 在 cmets 中指出的那样,您需要将您的程序重命名为 app.py 之类的其他名称,因为 python 正在尝试查找 flask_restful 并且它会找到您的程序而不是包。

【讨论】:

    【解决方案2】:

    这些安装对我有用

    aniso8601 = "==8.0.0"
    click = "==7.1.2"
    flask = "==1.1.2"
    flask-restful = "==0.3.8"
    flask-sqlalchemy = "==2.4.3"
    itsdangerous = "==1.1.0"
    jinja2 = "==2.11.2"
    markupsafe = "==1.1.1"
    pytz = "==2020.1"
    six = "==1.15.0"
    sqlalchemy = "==1.3.18"
    werkzeug = "==1.0.1"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多