У меня есть эти классы:Чтобы выбрать несколько столбцов в некоторых таблицах, связанных
class Channel(rdb.Model):
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):
rdb.metadata(metadata)
rdb.tablename("media_items")
id = Column("id", Integer, primary_key=True)
title = Column("title", String(100))
class User(rdb.Model):
rdb.metadata(metadata)
rdb.tablename("users")
id = Column("id", Integer, primary_key=True)
name = Column("name", String(50))
channels = relationship("Channel", secondary=user_channels, order_by="Channel.titleView", backref="users")
MediaItem связан с каналом и канал связан с пользователем.
, если я хотел бы, чтобы выбрать несколько столбцов из элементов и каналов, я бы это сделать:
session = Session()
result = session.query(Channel).join(Channel.items).values(Channel.title, Item.title)
я получить экземпляр класса Channel с его позиций.
Моя проблема: я не знаю, как выбрать некоторые столбцы из User, Channel и Item. Как я могу сделать запрос, где, например, я могу выбрать свойство User.name и его каналы только с свойством Channel.title и элементами этих каналов только с свойством Item.title?
Заранее благодарен!