首页 > 解决方案 > 如何更改石墨烯 django 中的继电器连接限制

问题描述

在 graphene-django 中,我在settings.py文件中设置了分页限制,如下所示。

GRAPHENE = {
    'RELAY_CONNECTION_MAX_LIMIT': 150,
}

假设一个特定的查询返回 200 个项目(我事先不知道),我想在图表上显示所有这些数据。返回结果时如何阻止石墨烯对其进行分页?

标签: pythondjangographene-django

解决方案


您可以单独覆盖每个max_limit参数DjangoFilterConnectionField。将此设置为None基本上禁用限制行为。

UserNode假设您对某个类有以下查询:

class UserQuery(graphene.ObjectType):
    all_users = DjangoFilterConnectionField(UserNode, max_limit=None)

max_limit参数将由DjangoConnectionClass通过上述设置提供限制行为的内部处理RELAY_CONNECTION_MAX_LIMIT

请注意,在非常大或昂贵的查询的情况下,这可能会导致严重的性能问题。就个人而言,我可能会根据您的数据选择一个非常高但仍然合理的限制,或者最好考虑在客户端实施适当的分页行为。


推荐阅读