【python】flask结合SQLAlchemy,在视图函数中实现对数据库的增删改查
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///yourdatabase.db'
db = SQLAlchemy(app)
# 定义模型
class Example(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80))
def __init__(self, name):
self.name = name
def __repr__(self):
return '<Example %r>' % self.name
# 创建视图函数
@app.route('/create', methods=['POST'])
def create_example():
name = request.form['name']
example = Example(name)
db.session.add(example)
db.session.commit()
return 'Example created'
@app.route('/read')
def read_examples():
examples = Example.query.all()
return ', '.join(example.name for example in examples)
@app.route('/update/<int:id>', methods=['POST'])
def update_example(id):
example = Example.query.get(id)
if example:
example.name = request.form['name']
db.session.commit()
return 'Example updated'
else:
return 'Example not found', 404
@app.route('/delete/<int:id>')
def delete_example(id):
example = Example.query.get(id)
if example:
db.session.delete(example)
db.session.commit()
return 'Example deleted'
else:
return 'Example not found', 404
if __name__ == '__main__':
app.run(debug=True)
这段代码展示了如何在Flask应用程序中使用SQLAlchemy来创建、读取、更新和删除数据库记录。首先,我们定义了一个模型Example
,并创建了与该模型对应的数据库表。然后,我们定义了几个视图函数,分别用于处理不同的数据库操作。这些操作包括创建新记录、读取所有记录、更新指定记录以及删除指定记录。在视图函数中,我们使用了Flask的request
对象来获取客户端发送的数据,并使用SQLAlchemy的session
对象来管理数据库的会话。
评论已关闭