我有2节课。类SimpleThing
也可以包含作为子项的自身列表。
class SimpleThing():
__tablename__ = 'Simple_Thing'
id = db.Column(db.Integer, primary_key=True, nullable=False)
bundled_things = db.relationship('SimpleThing',
secondary='Bundled_Things',
primaryjoin="SimpleThing.id==Bundled_Thing.c.bundle_id",
secondaryjoin="SimpleThing.id==Bundled_Thing.c.simple_id")
class BundledThing():
__tablename__ = 'Bundled_Thing'
bundle_fkey = db.ForeignKey('Simple_Thing.id')
bundle_id = db.Column(db.Integer, bundle_fkey, nullable=False)
bundle_thing = db.relationship('SimpleThing',
foreign_keys='BundledThing.bundle_id')
simple_fkey = db.ForeignKey('Simple_Thing.id')
simple_id = db.Column(db.Integer, simple_fkey, nullable=False)
simple_thing = db.relationship('SimpleThing',
foreign_keys='BundledThing.simple_id')
quantity = db.Column(db.Integer, nullable=False)
关系将正确填充为SimpleThing
的列表,但我也需要数量字段。有谁知道如何通过关系将其显示为属性? SimpleThing.bundeled_things
是正确的,但对于每个bundeled_thing
,我希望能够通过关系请求填充bundled_thing.quantity
,而不必查询联接表。