flask-sqlalchemy返回json数据
时间: 2023-08-15 09:31:42 浏览: 133
在 Flask-SQLAlchemy 中,可以通过查询模型表获取数据,并将数据转换为 JSON 格式返回给客户端。下面是示例代码:
```python
from flask import Flask, jsonify
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://user:password@localhost/db_name'
db = SQLAlchemy(app)
class User(db.Model):
__tablename__ = 'user'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(50), nullable=False)
age = db.Column(db.Integer, nullable=False)
def to_dict(self):
return {'id': self.id, 'name': self.name, 'age': self.age}
@app.route('/users')
def get_users():
users = User.query.all()
users_dict = [user.to_dict() for user in users]
return jsonify(users_dict)
if __name__ == '__main__':
app.run(debug=True)
```
上述代码中,我们定义了一个 `User` 模型,使用 `query.all()` 获取所有用户对象,并将其转换为字典格式的列表,最后使用 `jsonify()` 将其转换为 JSON 格式返回给客户端。
在字典格式转换中,我们还定义了一个 `to_dict()` 方法,用于将模型对象转换为字典格式,方便后续的 JSON 格式转换。
阅读全文