Ответ больше не нужен, так как я изменил фокус в коде. (см. мой комментарий в ответе) Публикуйте ответы для дальнейшего использования...
Как получить результаты обратной ссылки «один ко многим», упорядоченной по полю в дочернем элементе? Мне нужно все что-то для гида, упорядоченное по индексу. Но в это время они извлекаются случайным образом, даже если они упорядочены на сервере MS SQL.
У меня в TurboGears 2 datamodels.py:
`class Parcel(DeclarativeBase):
__tablename__ = 'GENERAL'
__table_args__ = ({'autoload': True})
gid = Column(Integer, primary_key=True)`
somethings = relationship('Something', backref='Parcel')
'class Something(DeclarativeBase):
__tablename__ = 'SKETCH'
__table_args__ = ({'autoload': True})
gid = Column(Integer, ForeignKey('GENERAL.gid'), primary_key=True)
index = Column(Integer, primary_key=True)
В Turbogears root.py:
query = DBSession.query(Parcel)
query = query.options(joinedload('somethings')
query=session.filter(Parcel.gid==gid)
Возвращает все что-то для gid в неупорядоченном виде.