I did the following tutorial on youtube: https://www.youtube.com/watch?v=s_ht4AKnWZg
This is my code:
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)
Now when I run the script, I get following error:
/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
The code is 1:1 like in the video. Does someone have a idea where the problem is?
As it was pointed out in the comments by @tobey, you need to rename your program to something else like app.py
because python is trying to find flask_restful
and it finds your program instead of the package.