Mysql Sqlalchemy中联接表继承的多重继承

Mysql Sqlalchemy中联接表继承的多重继承,mysql,sqlalchemy,flask-sqlalchemy,multiple-inheritance,Mysql,Sqlalchemy,Flask Sqlalchemy,Multiple Inheritance,我想定义一个模型,它继承了Alchemy中的两个基本模型,如下所示: class BaseModel(db.Model): id = db.Column(db.Integer(). primary_key=1) class BaseModelA(BaseModel): base_model_a_field = db.Column(db.String(9)) base_model_a_type = db.Column(db.String(9)) __mapper_

我想定义一个模型,它继承了Alchemy中的两个基本模型,如下所示:

class BaseModel(db.Model):
    id = db.Column(db.Integer(). primary_key=1)

class BaseModelA(BaseModel):
    base_model_a_field = db.Column(db.String(9))
    base_model_a_type = db.Column(db.String(9))
    __mapper_args__ = {"polymorphic_identity": "a", "polymorphic_on": base_model_a_type}

class BaseModelB(BaseModel):
    base_model_b_field = db.Column(db.String(9))
    base_model_b_type = db.Column(db.String(9))
    __mapper_args__ = {"polymorphic_identity": "b", "polymorphic_on": base_model_b_type}

class InheritancedModel(BaseModelA, BaseModelB):

    model_a_id = db.Column(db.Integer(), db.ForeignKey("base_model_a.id"), primary_key=1)
    model_b_id = db.Column(db.Integer(), db.ForeignKey("base_model_b.id"), primary_key=1)

    other_field = db.Column(db.String(9))
创建继承模型的实例时

IntegrityError:(\u mysql\u exceptions.IntegrityError)(1452,'无法添加或更新子行:外键约束失败

我可以在sqlalchemy中执行联接表继承的多重继承吗


我在sqlalchemy中找不到任何关于多重继承的信息。

多重继承有效,但您不能像这样组合两个单独的多态层次结构。@univerio您能给我一些建议吗?那么,为什么要组合两个单独的多态层次结构?组合两个单独的多态层次结构是什么意思我的意思是,继承图中的子树,其中所有类在上都具有相同的
多态性。\u与其使用抽象术语,如
BaseModelA
,不如给我一个具体的示例,说明您试图实现的目标?