Использование представлений Django Запросы в графеновых резольверах

как я могу использовать мои запросы представления django в графеновых резольверах в качестве запросов

def get_queryset(self):
    return CustomerModel.objects.for_entity(
        entity_slug=self.kwargs['entity_slug'],
        user_model=self.request.user
    ).order_by('-updated')

я пробовал это, но ничего не получилось

class CustomerList(DjangoObjectType):
"""testing API
"""
class Meta:
    model = CustomerModel
    fields = ("email",)
class CustomerQuery(graphene.ObjectType):
all_customers = graphene.List(CustomerList)

def resolve_all_customers(self, root, **kwargs):
    return CustomerModel.objects.for_entity.filter(
        entity_slug=self.kwargs['entity_slug'],
        user_model=self.request.user
    ).order_by('-updated')

я получаю эту ошибку graphql

{


"errors": [
{
  "message": "'NoneType' object has no attribute 'kwargs'",
  "locations": [
    {
      "line": 2,
      "column": 3
    }
  ],
  "path": [
    "allCustomers"
  ]
}

], "data": { "allCustomers": null } }

Вы должны определить аргумент в

all_customers = graphene.List(CustomerList)

Нравится

all_customers = graphene.List(CustomerList, entity_slug=graphene.String(required=True))

Полный код:

class CustomerQuery(graphene.ObjectType):
    all_customers = graphene.List(CustomerList, entity_slug=graphene.String(required=True))

def resolve_all_customers(self, root, **kwargs):
    return CustomerModel.objects.for_entity.filter(
        entity_slug=kwargs.get('entity_slug'),
        user_model=self.request.user
    ).order_by('-updated')

Чтобы прочитать больше, ознакомьтесь с официальным документом

Вернуться на верх