flask_sqlalchemy with_entities和filter一起使用 查询的结果转为列表嵌套字典 写一个例子给我
时间: 2023-05-13 07:05:03 浏览: 202
当然可以,以下是一个使用 flask_sqlalchemy with_entities 和 filter 一起查询的例子,将结果转换为列表嵌套字典:
```python
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///example.db'
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(50))
age = db.Column(db.Integer)
@app.route('/')
def index():
# 查询年龄大于等于18岁的用户的姓名和年龄
users = db.session.query(User.name, User.age).filter(User.age >= 18).all()
# 将结果转换为列表嵌套字典
result = [{'name': name, 'age': age} for name, age in users]
return {'users': result}
if __name__ == '__main__':
app.run()
```
在这个例子中,我们使用了 flask_sqlalchemy 的 with_entities 和 filter 方法来查询数据库中年龄大于等于18岁的用户的姓名和年龄。然后,我们将查询结果转换为列表嵌套字典,最后返回给客户端。
阅读全文