'drf_yasg swagger library problem with django_elasticsearch_dsl_drf
Django drf_yasg swagger library seems to have problem with django_elasticsearch_dsl_drf. When I define a viewset of django_elasticsearch_dsl_drf.viewsets.DocumentViewSet the following error will rise in drf_yasg library. Anybody has ever encountered this problem? I did not find any related topic for this issue
[2022-02-16 15:22:11] ERROR|django.request|Internal Server Error: /swagger/
Traceback (most recent call last):
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/asgiref/sync.py", line 451, in thread_handler
raise exc_info[1]
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/django/core/handlers/exception.py", line 38, in inner
response = await get_response(request)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/django/core/handlers/base.py", line 233, in _get_response_async
response = await wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.8/asyncio/tasks.py", line 455, in wait_for
return await fut
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/asgiref/current_thread_executor.py", line 22, in run
result = self.fn(*self.args, **self.kwargs)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/asgiref/sync.py", line 455, in thread_handler
return func(*args, **kwargs)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/django/views/decorators/csrf.py", line 54, in wrapped_view
return view_func(*args, **kwargs)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/django/views/generic/base.py", line 70, in view
return self.dispatch(request, *args, **kwargs)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/rest_framework/views.py", line 509, in dispatch
response = self.handle_exception(exc)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/rest_framework/views.py", line 469, in handle_exception
self.raise_uncaught_exception(exc)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/rest_framework/views.py", line 480, in raise_uncaught_exception
raise exc
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/rest_framework/views.py", line 506, in dispatch
response = handler(request, *args, **kwargs)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/drf_yasg/views.py", line 94, in get
schema = generator.get_schema(request, self.public)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/drf_yasg/generators.py", line 242, in get_schema
endpoints = self.get_endpoints(request)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/drf_yasg/generators.py", line 318, in get_endpoints
path = self.coerce_path(path, view)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/drf_yasg/generators.py", line 298, in coerce_path
field_name = get_pk_name(model)
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/rest_framework/schemas/generators.py", line 23, in get_pk_name
return _get_pk(meta).name
File "/home/hamed/PycharmProjects/boursrefsengine/venv/lib/python3.8/site-packages/rest_framework/utils/model_meta.py", line 50, in _get_pk
rel = pk.remote_field
AttributeError: 'NoneType' object has no attribute 'remote_field'
HTTP GET /swagger/?format=openapi 500 [1.06, 127.0.0.1:46122]
[2022-02-16 15:22:11] ERROR|django.channels.server|HTTP GET /swagger/?format=openapi 500 [1.06, 127.0.0.1:46122]
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
