SqlAlchemy - 嵌套关系加载行为

时间:2016-06-14 14:11:27

标签: python sqlalchemy relationship

我使用SqlAlchemy来管理我的数据库查询,但是我遇到了问题。 我在这里定义了3个表:

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    orders = relationship("Order", backref=backref("payer", uselist=True, lazy='dynamic'), foreign_keys="Order.user_id", order_by="desc(Order.date)")
    gifts = relationship("Order", backref=backref("receiver", uselist=False), foreign_keys="Order.user_target_id", order_by="desc(Order.date)")

class Order(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    date = db.Column(db.DateTime)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    user_target_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    partner_id = db.Column(db.Integer, db.ForeignKey('partner.id'))

class Partner(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    orders = relationship("Order", backref=backref("partner", uselist=False))

我想得到所有"礼物"对于用户而言,对于每个礼物(订单对象),我希望得到“付款人”,“接收者”#39;和'伙伴'关系充实。

我对SqlAlchemy很新,所以也许我的关系配置得很糟糕。

有人能帮助我吗?

0 个答案:

没有答案