一、flask模型操作
- 增
db.session.add(对象)
db.session.commit()
- 删
例:
user = User.query.get(3) # get里面默认是主键
db.session.delete(user)
db.session.commit()
- 改
例:
user = User.query.first()
user.name = '我被修改了'
db.session.add(user)
db.session.commit()
- 查
- get: 通过主键获取一个数据
- first:获取第一个数据
没有last
二、模型级联
- 一对多
# 班级模型类
class Grade(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
g_name = db.Column(db.String(20))
# 对应学生(声明关系,不会生成相应的字段)
# db.relationship('关系的模型类', backret='当前的表名')
g_students = db.relationship('Student', backref='grade', lazy=True)
# 学生模型类
class Student(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
s_name = db.Column(db.String(20))
s_score = db.Column(db.Integer)
# 班级(外键) 声明关系(外键)
s_grade = db.Column(db.Integer, db.ForeignKey(Grade.id))
- 数据获取
#方式一
students = Student.query.filter(Student.s_grade==gradeid)
# 方式二
grade = Grade.query.get(gradeid)
return render.template('xxx.html',students=grade.g_students)
三、flask-Bootstrap
- 安装
pip install flask-Bootstrap