将任意select映射到sqlachemy中的关系表

2024-10-03 19:32:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我在表项和细节之间有一个多对多关系表,定义如下:

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), \
        )

如果我定义表内项目:

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

很好用。你知道吗

但我需要一些稍微不同的东西。ItemDetail表中的endDate列指示哪些详细信息有效。endDate为空时,详细信息有效。你知道吗

所以实际上,我需要在我的项目表中有这样的内容:

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

问题是如何定义validItemDetail。我尝试将select语句映射到任意类,但没有成功。你知道吗

有什么想法吗?你知道吗


Tags: id定义详细信息columnintegerdetailsdetailsecondary