[英]How to properly structure a self-referential SQLalchemy Adjacency List Mixin
[英]Flask SQLAlchemy self-referential ordering list
我正在尝试用有序的孩子制作一个自我参照的树,但我似乎无法做对。 这是让我最接近的原因,但这种行为非常出乎意料。
我想知道我做错了什么,并且我无法使用排序列表找到自我引用的示例。
我只想要一个由有序节点组成的树,排序由 sql-alchemy 处理。 谢谢!
class Node(db.Model):
id = db.Column(db.Integer, primary_key = True)
parent_id = db.Column(db.Integer, db.ForeignKey('node.id'))
index = db.Column(db.Integer)
children = db.relationship('Node', order_by = 'Node.index', collection_class = ordering_list('index'), backref='parent', remote_side = [id], uselist = True)
我不得不将 children 和 parent 属性分开,并使用back_populates
而不是backref
。
class Node(db.Model):
id = db.Column(db.Integer, primary_key = True)
parent_id = db.Column(db.Integer, db.ForeignKey('node.id'))
index = db.Column(db.Integer)
parent = db.relationship('Node', remote_side = 'Node.id', back_populates = 'children')
children = db.relationship('Node', order_by = 'Node.index', collection_class = ordering_list('index'), back_populates = 'parent')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.