Фильтр отношений SQLAlchemy?

могу ли я сделать:

table.relationship.filter( column = value )

чтобы получить подмножество строк для отношений? и то же самое для order_by?

Ответы

Ответ 1

В соответствии с relationship() documentation вы можете использовать order_by аргумент ключевого слова relationship s, чтобы установить порядок, который будут возвращены. На той же странице в нем упоминается, что вы также можете использовать аргумент ключевого слова primaryjoin для определения дополнительных параметров соединения. Я думаю, что это можно использовать для фильтра, который вы хотите.

Ответ 2

relationship() с опцией lazy='dynamic' предоставляет вам запрос (AppenderQuery объект, который позволяет добавлять/удалять элементы), поэтому вы можете .filter()/.filter_by() и .order_by() его.