我仍然是Flask / SQLAlchemy的新手。我做了this我遇到了上下文问题。我已经设法修复了SQLAlchemey问题,但现在我无法从我的postgres DB中检索数据
我有一个单独的目录,用于模型,路由和主app.py文件。我正在app.py中初始化我的数据库,在models.model中导入数据库并创建一个基本类。我已经设法在python终端中手动添加数据,并通过在app.py文件中硬编码新类。我在postgres中看到这个表/数据。
我要做的下一件事是在我的一条路线中检索这些数据,并将其作为Get请求的一部分发送。以下是所有2个文件的代码。
app.py
from flask import Flask
from flask_restful import Api
from flask_sqlalchemy import SQLAlchemy
from my_routes.user import User
app = Flask(__name__)
app.config.from_pyfile('config.py')
api = Api(app)
db = SQLAlchemy(app)
from models.model import Task
db.create_all()
db.session.commit()
# task = Task(4, 'nothing yet')
# db.session.add(task)
# db.session.commit()
# task = Task.query.all()
# print (task)
# api.add_resource(root.HelloWorld, '/')
api.add_resource(User, '/user')
# api.add_resource(MyTest, '/test')
if __name__ == '__main__':
app.run()
models.model
from app import db
class Task(db.Model):
id = db.Column('id', db.Integer, primary_key=True)
data = db.Column('data', db.Unicode)
def __init__(self, id, data):
self.id = id
self.data = data
routes.my_test.MyTest
from flask_restful import Resource
from models.model import Task
class MyTest(Resource):
def get(self):
first_task = Task.query.first()
return {'test route': first_task}
当我尝试运行app.py时,出现以下错误:
ImportError:无法导入名称“任务”
如何修复此导入错误,并将我的任务表中的数据提供给我的所有路由?