我正在使用SQLAlchemy实现GraphQL API。我现在面临的问题是我希望能够对主体的相关实体应用限制和抵消。
在SQL术语中,我想对连接表应用限制和偏移量。例如,我将User加入所有地址,但限制为2,因此不会加载超过2个用户地址。
请注意,我目前正在以下列方式处理联接,以便过滤关系:
query = session.query(User).\
filter(SOME FILTER ON USER PROPERTY).\
limit(5).from_self().\ # optional limit on the amount of users
outerjoin(User.addresses).\
options(contains_eager(User.addresses)).\
filter(SOME FILTER ON ADDRESS)
非常感谢任何帮助。