SQLAlchemy从数据库中检索数据作为字典列表



我试图从SQLAlchemy (flask_sqlalchemy)作为字典列表检索数据,db中的每一行都应该是字典。

预期的结果应该是这样的:

result = [{'id':val1, 'location:val2, 'event':val3, 'date_created': val4, 'background':val5},{'id':val11, 'location:val12, 'event':val13, 'date_created': val14, 'background':val15}]

的想法是以后像这样使用数据:

data = result[i]['location']
print(data)

我的数据库模型是这样的:

class events_db(db.Model):
id = db.Column(db.Integer, primary_key=True)
location = db.Column(db.String(50), nullable=False)
event = db.Column(db.String(200), nullable=False)
date_created = db.Column(db.DateTime, default=datetime.datetime.utcnow)
background = db.Column(db.String(20), nullable=False)

,我像这样做查询:

events = events_db.query.order_by(events_db.date_created)

events变量是一个类型:

<class 'flask_sqlalchemy.BaseQuery'>

那么,问题是如何以期望的形式从这个类中检索值。

thanks in advance

在查询之后需要一个。all(),而这个:

events = events_db.query.order_by(events_db.date_created).all()
results_dict = [dict((col, getattr(row, col)) for col in row.__table__.columns.keys()) for row in events]

最新更新