多个SQL表外键关系条目同时烧瓶sqlalchemy

时间:2019-10-10 01:48:06

标签: python sql flask sqlalchemy foreign-keys

flasksqlalchemy中,有3个表彼此嵌套:

models.py

class VariantManualReview( db.Model ) :

    __tablename__ = 'variantmanualreview'

    id = db.Column(db.Integer, primary_key=True, unique = True)
    name = db.Column(db.String(256), index=True, unique=True)
    last_review_on = db.Column(db.DateTime, index=True, default=datetime.now)
    revisions = db.relationship('VariantManualRevisions', backref='author', lazy='dynamic')

class VariantManualRevisions( db.Model ) :

    __tablename__ = 'variantmanualrevisions'

    variant_id = db.Column(db.Integer, db.ForeignKey('variantmanualreview.id'))
    id = db.Column(db.Integer, primary_key=True, unique = True)
    reviewed_on = db.Column(db.DateTime, index=True, default=datetime.now)
    reviewed_by = db.Column(db.String(128))
    ACMG_overall = db.Column(db.String(16))
    subcategories = db.relationship('VariantManualRevisionsSubcategories', backref='author', lazy='dynamic')

class VariantManualRevisionsSubcategories( db.Model ) :

    __tablename__ = 'variantmanualrevisionssubcategories'

    revision_id = db.Column(db.Integer, db.ForeignKey('variantmanualrevisions.id'))
    id = db.Column(db.Integer, primary_key=True, unique = True)
    reviewed_on = db.Column(db.DateTime, index=True, default=datetime.now)
    reviewed_by = db.Column(db.String(128))
    category = db.Column(db.String(16))
    accepted = db.Column(db.Boolean, default=False)
    notes = db.Column(db.String(256))
    studies = db.relationship('VariantManualRevisionsSubcategoriesPMIDs', backref='author', lazy='dynamic')

在某些情况下,在验证表单时,我需要同时为所有3个表插入一个条目,我试图插入并检索它们,但一次执行所有这些更改似乎并不是最佳选择,此外,在每个commit()语句失败后,页面会重新加载:

if

我环顾四周,但没有找到答案,有人知道如何做吗?

非常感谢您的帮助。

0 个答案:

没有答案
相关问题