strawberry-graphql/strawberry-django

Relay: Wrap resolve_model_node with django_resolver

开放

#402 创建于 2023年10月27日

 (3 条评论) (0 个反应) (0 位负责人)Python (152 个派生)auto 404
enhancementhelp wantedquestion

仓库指标

星标
 (496 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

Currently: https://github.com/strawberry-graphql/strawberry-graphql-django/blob/8f82b84141c182980b5001b4f0f562c787fe2dda/strawberry_django/relay.py#L395

Only the actual get/first methods are being wrapped for async safety.

There are cases where I need to access data not fetched yet in the custom get_queryset resolver (permissions, system settings, etc) defined up: https://github.com/strawberry-graphql/strawberry-graphql-django/blob/8f82b84141c182980b5001b4f0f562c787fe2dda/strawberry_django/relay.py#L380-L382

I went ahead and just wrapped the whole resolve_model_node resolver with django_resolver and didn't notice any difference.

I found this while trying to customize how a node is being resolved:

    node: relay.Node = relay.node()

贡献者指南