我可以在关系对象中添加新对象吗?
Class Parent():
id = Column(Integer, primary_key=True)
name = Column(String(10))
child = relationship('Child', backref='parent', cascade="all, delete-orphan")
Class Child():
id = Column(Integer, primary_key=True)
parent = Column(Integer, ForeignKey('parent.id'))
name = Column(String(10))
parent = Parent('parent1', [Child(name='child1'), Child(name='child2')])
session.add(parent)
session.commit()
上面的代码是插入一个父项及其2个孩子。
我的问题是,
我可以像这样添加来自现有父母的新孩子吗?
parent = session.query(Parent).filter(Parent.id=1).first()
parent.children.append(Child(name='child3'))
session.merge(parent)
我在上面尝试过,它显示了IntegrityError:(IntegrityError)数据类型不匹配u'UPDATE child。
我在这里犯了什么错误吗?
答案 0 :(得分:1)
试试这个......
parent = session.query(Parent).filter(Parent.id=1).first()
child = Child(parent=parent, name='child3')
session.add(child)