如何过滤两个表中具有manytomany关系的列?

2024-05-18 11:41:45 发布

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

我有这张桌子:

channel_items = Table(
        "channel_items",
        metadata,
        Column("channel_id", Integer, ForeignKey("channels.id")),
        Column("media_item_id", Integer, ForeignKey("media_items.id"))
    )

class Channel(rdb.Model):
    """Set up channels table in the database"""
    rdb.metadata(metadata)
    rdb.tablename("channels")

    id = Column("id", Integer, primary_key=True)
    title = Column("title", String(100))

    items = relationship("MediaItem", secondary=channel_items, order_by="MediaItem.titleView", backref="channels")

class MediaItem(rdb.Model):
    """Set up items table in the database"""
    rdb.metadata(metadata)
    rdb.tablename("media_items")

    id = Column("id", Integer, primary_key=True)
    title = Column("title", String(100))
    type = Column("type", String(50))

我想进行一个查询,但是要过滤第二个表。比如:

通道=会话.查询(频道).options(eatLoad(“item”)).filter(MediaItem==“jpg”).all()

提前谢谢!在


Tags: idstringtitlechannelitemscolumnintegeritem