SqlAlchemy Polymorphism独立创建父表和子表

时间:2017-10-04 17:21:17

标签: python sqlalchemy

我有一个多态关联设置如下:

class Parent(Base)
      id = Column(Integer, primary_key=True)
      name = Column(String, nullable=False)


class Child(Parent)
      parent_id = Column(ForeignKey(Parent.id), primary_key=True)
      description = Column(String)

    __mapper_args__ = {
        'polymorphic_identity': 'child'
    }

我希望能够先创建父表,然后将其链接到子表,如下所示:

parent = Parent(name='foobar')
session.add(parent)
session.flush()
child = Child(description='baz', parent_id=parent.id)

但是,我在子项创建的name字段空约束上收到完整性错误 - 这意味着最后一行也会尝试插入到父表中。

有没有办法实现这种拆分插入?

0 个答案:

没有答案