Использование представлений 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')
Чтобы прочитать больше, ознакомьтесь с официальным документом