将任意选择映射到sqlalchemy中的关系表

时间:2011-05-09 11:33:35

标签: python select many-to-many sqlalchemy

表Item和Detail之间有多对多的关系表,定义如下:

itemDetail = Table('ItemDetail',Base.metadata, \
            Column('id', Integer, primary_key=True), \
            Column('itemId', Integer, ForeignKey('Item.id')), \
            Column('detailId', Integer, ForeignKey('Detail.id')), \
            Column('endDate', Date), \
        )

如果我在表内定义Item:

details = relation('Detail', secondary=itemDetail) 

它工作正常。

但我需要稍微不同的东西。 ItemDetail表中的endDate列指示哪些详细信息有效。当endDate为null时,详细信息有效。

实际上,我需要在我的Item表中有这样的东西:

details = relation('Detail', secondary=validItemDetail)

问题是定义validItemDetail。我已经尝试将select语句映射到任意类但没有成功。

有什么想法吗?

0 个答案:

没有答案