2010-08-09 4 views
1

관련 일부 테이블에 몇 열을 선택하려면내가이 수업을

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.title 속성 만있는 User.name 속성과 해당 채널과 Item.title 속성 만 가진 해당 채널의 항목을 선택할 수있는 쿼리를 만들려면 어떻게해야합니까?

미리 감사드립니다.

답변

관련 문제