存在一对多的关系。在 sqlalchemy
中用此代码表示
class Parent(Base):
__tablename__ = 'parent'
id = Column(Integer, primary_key=True)
children = relationship("Child")
class Child(Base):
__tablename__ = 'child'
id = Column(Integer, primary_key=True)
parent_id = Column(Integer, ForeignKey('parent.id'))
在我的概念中,Child
不能没有父级而存在。所以 parent_id
不允许是 NULL
。当我从 Child
中删除 Parent
时,它应该自动被删除。我不确定这是否可行,或者这是否属于关系数据库管理系统概念的一部分。
目前我这样做
child = parent.children[0]
parent.children.remove(child)
session.delete(child)
我想要的是这个
child = parent.children[0]
parent.children.remove(child)
或者这个
child = parent.children[0]
session.delete(child)