SQLAlchemy邻接列表关系在父级上未更新

时间:2020-10-14 16:29:51

标签: python-3.x flask sqlalchemy flask-sqlalchemy

通过SQLAlchemy documentation,我已经能够创建所需的父子关系。

class Node(db.Model):
    __tablename__ = 'node'
    id = db.Column(db.Integer, primary_key=True)
    parent_data = db.Column(db.Integer, db.ForeignKey('node.data'))
    data = db.Column(db.String(50))
    children = db.relationship("Node", remote_side=[data])

然后创建对象,一切正常

    node1 = Node(data='Node1')
    node2 = Node(data='Node2', children=node1)
    db.session.add(node2)
    db.session.commit()

但是,如果我更改了node1中的数据(node2的子节点),则node2.parent_data不会相应地更新。 尝试为儿童使用backref,级联关系但没有成功。

我可以使用关联表在同一个类中创建多对多关系,但是很好地完成这项工作。

0 个答案:

没有答案