Flask-SQLAlchemy数据库操作
Posted 隔壁古二蛋
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask-SQLAlchemy数据库操作相关的知识,希望对你有一定的参考价值。
建表
# -*- coding: UTF-8 -*- from . import db #多对多关系表,两组一对多,即为多对多 class Boy2Girl(db.Model): __tablename__ = ‘boy2girl‘ nid = db.Column(db.Integer,primary_key=True) #建立一对多关系,ForeignKey传入对应表的__tablename__.id boy_id = db.Column(db.Integer,db.ForeignKey(‘boy.id‘)) # 建立一对多关系,ForeignKey传入对应表的__tablename__.id girl_id = db.Column(db.Integer,db.ForeignKey(‘girl.id‘)) class Boy(db.Model): __tablename__ = ‘boy‘ id = db.Column(db.Integer,primary_key=True) name = db.Column(db.String(32),unique=True) age = db.Column(db.Integer) #并不会在数据库中生成列,作用为ORM调用时可以通过.来调用另一张表 #例如boy.girl,girl.boy #传入的参数为另一张表的类名,关系表的表名,反向查询时的名字,可以为任意名字 girl = db.relationship(‘Girl‘,secondary = Boy2Girl.__tablename__,backref = ‘boy‘) car = db.relationship(‘Car‘,backref = ‘boy‘) def __repr__(self): return ‘<Boy %r>‘%self.name class Girl(db.Model): __tablename__ = ‘girl‘ id = db.Column(db.Integer,primary_key=True) name = db.Column(db.String(32),unique=True) age = db.Column(db.Integer) def __repr__(self): return ‘<Girl %r>‘ % self.name class Car(db.Model): __tablename__ = ‘car‘ id = db.Column(db.Integer,primary_key=True) name = db.Column(db.String(32),unique=True) #建立一对多关系,ForeignKey传入对应表的__tablename__.id,写在多的一对多中多的那边 boy_id = db.Column(db.Integer,db.ForeignKey(‘boy.id‘)) def __repr__(self): return ‘<Car %r>‘%self.name
以上是关于Flask-SQLAlchemy数据库操作的主要内容,如果未能解决你的问题,请参考以下文章