Извлечение объекта из представления, но возникает ошибка __init__() missing 1 required positional argument. Как ее устранить? [закрыто]
Я пытаюсь получить объект, который соответствует заданному значению поля "slug".
from django_elasticsearch_dsl_drf.viewsets import DocumentViewSet
from elasticsearch_dsl.response import Response
class CardDocumentView(DocumentViewSet):
def retrieve(self, request, slug=None):
query_slug = slug
query_obj = { 'slug' : query_slug}
if query_obj:
search_result = CardDocument.search().query("match",
slug=query_slug)
qs = search_result.to_queryset()
serializer = self.get_serializer(search_result, many=True)
return Response(serializer.data)
Когда я запускаю этот код, он вызывает следующую ошибку:
Traceback (most recent call last):
File "D:\Repo_Api\env\lib\site-packages\django\core\handlers\exception.py", line 47, in inner
response = get_response(request)
File "D:\Repo_Api\env\lib\site-packages\django\core\handlers\base.py", line 181, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "D:\Repo_Api\env\lib\site-packages\django\views\decorators\csrf.py", line 54, in wrapped_view
return view_func(*args, **kwargs)
File "D:\Repo_Api\env\lib\site-packages\rest_framework\viewsets.py", line 125, in view
return self.dispatch(request, *args, **kwargs)
File "D:\Repo_Api\env\lib\site-packages\rest_framework\views.py", line 509, in dispatch
response = self.handle_exception(exc)
File "D:\Repo_Api\env\lib\site-packages\rest_framework\views.py", line 469, in handle_exception
self.raise_uncaught_exception(exc)
File "D:\Repo_Api\env\lib\site-packages\rest_framework\views.py", line 480, in raise_uncaught_exception
raise exc
File "D:\Repo_Api\env\lib\site-packages\rest_framework\views.py", line 506, in dispatch
response = handler(request, *args, **kwargs)
File "D:\Repo_Api\w2mm-api\elastic_search\views.py", line 151, in retrieve
return Response(serializer.data)
TypeError: __init__() missing 1 required positional argument: 'response'
Пожалуйста, помогите мне решить эту проблему