在 graphene_django 中将 DjangoFilterConnectionField 与自定义连接一起使用
Using DjangoFilterConnectionField with custom Connection in graphene_django
我正在尝试使用与此类似的东西:
class User(DjangoObjectType):
class Meta:
model = auth_models.User
filter_fields = ('email', )
interfaces = (Node, )
connection = UserConnection
class UserConnection(Connection):
extra = graphene.String()
class Meta:
node = User
class Query(graphene.ObjectType):
users_connection = DjangoFilterConnectionField(
User,
where=UserWhereInput()
)
根据我的理解,User 节点需要在其元数据上传递 UserConnection,而 UserConnection 需要在其元数据上传递给 User。
但是,它创建了一个交叉引用。有帮助吗?
答案可以在这里找到:
https://github.com/graphql-python/graphene-django/issues/304
class UserConnection(Connection):
extra = graphene.String()
class Meta:
abstract = True
class User(DjangoObjectType):
class Meta:
model = auth_models.User
filter_fields = ('email', )
interfaces = (Node, )
connection_class = UserConnection
class Query(graphene.ObjectType):
users_connection = DjangoFilterConnectionField(User, where=UserWhereInput())
我正在尝试使用与此类似的东西:
class User(DjangoObjectType):
class Meta:
model = auth_models.User
filter_fields = ('email', )
interfaces = (Node, )
connection = UserConnection
class UserConnection(Connection):
extra = graphene.String()
class Meta:
node = User
class Query(graphene.ObjectType):
users_connection = DjangoFilterConnectionField(
User,
where=UserWhereInput()
)
根据我的理解,User 节点需要在其元数据上传递 UserConnection,而 UserConnection 需要在其元数据上传递给 User。
但是,它创建了一个交叉引用。有帮助吗?
答案可以在这里找到:
https://github.com/graphql-python/graphene-django/issues/304
class UserConnection(Connection):
extra = graphene.String()
class Meta:
abstract = True
class User(DjangoObjectType):
class Meta:
model = auth_models.User
filter_fields = ('email', )
interfaces = (Node, )
connection_class = UserConnection
class Query(graphene.ObjectType):
users_connection = DjangoFilterConnectionField(User, where=UserWhereInput())