SQL Alchemy:与孙子的关系

时间:2011-06-24 15:02:13

标签: python sqlalchemy relationship

我正在使用三个不同级别的对象构建SQL Alchemy结构;例如,考虑一个简单的数据库来存储有关某些博客的信息:有一些Blog对象,一些Post对象和一些Comment对象。每个Post属于Blog,每个Comment属于Post。使用backref我可以自动获取属于Post的所有Blog的列表以及Comment的类似内容。

我起草了skeleton for such a structure

我现在要做的是直接在Blog中包含属于该Comment的所有Blog的数组。我已经尝试了一些方法,但它们不起作用,甚至使SQL Alchemy以我无法解决的方式哭泣。我认为我的经常需要,但我找不到任何有用的东西。

Colud有人建议我怎么做?

感谢。

2 个答案:

答案 0 :(得分:2)

我认为您可以使用association proxy

class Blog(Base):

    comments = association_proxy('posts', 'comments')

答案 1 :(得分:0)

您需要使用join

comments = session.query(Comment).join(Post).filter(Post.blog == b1).all()