Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork7k
Closed
Labels
Milestone
Description
Hi,
I just upgraded to 3.4.0 of django-rest-framework. In my application i have a API view which doesn't have a GET method implemented only POST is there.
Now i am trying to auto generate the schema using the tutorial given. Here is my code for the schema view.
from rest_framework.decorators import api_view, renderer_classesfrom rest_framework import renderers, schemas@api_view()@renderer_classes([renderers.CoreJSONRenderer, ])def schema_view(request): generator = schemas.SchemaGenerator(title='Bookings API') return generator.get_schema()Now when i try to view this schema i am getting this error.
Traceback (most recent call last): File "/home/ashish/Env/backend/lib/python3.4/site-packages/django/core/handlers/base.py", line 149, in get_response response = self.process_exception_by_middleware(e, request) File "/home/ashish/Env/backend/lib/python3.4/site-packages/django/core/handlers/base.py", line 147, in get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/home/ashish/Env/backend/lib/python3.4/site-packages/django/views/decorators/csrf.py", line 58, in wrapped_view return view_func(*args, **kwargs) File "/home/ashish/Env/backend/lib/python3.4/site-packages/django/views/generic/base.py", line 68, in view return self.dispatch(request, *args, **kwargs) File "/home/ashish/Env/backend/lib/python3.4/site-packages/rest_framework/views.py", line 466, in dispatch response = self.handle_exception(exc) File "/home/ashish/Env/backend/lib/python3.4/site-packages/rest_framework/views.py", line 463, in dispatch response = handler(request, *args, **kwargs) File "/home/ashish/Env/backend/lib/python3.4/site-packages/rest_framework/decorators.py", line 52, in handler return func(*args, **kwargs) File "/home/ashish/Projects/backend/oyster/config/swagger.py", line 7, in schema_view generator = schemas.SchemaGenerator(title='Bookings API') File "/home/ashish/Env/backend/lib/python3.4/site-packages/rest_framework/schemas.py", line 74, in __init__ self.endpoints = self.get_api_endpoints(patterns) File "/home/ashish/Env/backend/lib/python3.4/site-packages/rest_framework/schemas.py", line 128, in get_api_endpoints prefix=path_regex File "/home/ashish/Env/backend/lib/python3.4/site-packages/rest_framework/schemas.py", line 121, in get_api_endpoints link = self.get_link(path, method, callback) File "/home/ashish/Env/backend/lib/python3.4/site-packages/rest_framework/schemas.py", line 196, in get_link fields += self.get_serializer_fields(path, method, callback, view) File "/home/ashish/Env/backend/lib/python3.4/site-packages/rest_framework/schemas.py", line 256, in get_serializer_fields serializer_class = view.get_serializer_class()AttributeError: 'LogoutView' object has no attribute 'get_serializer_class'Here is my LogoutView class..
class LogoutView(APIView): permission_classes = (AllowAny,) def post(self, request): return self.logout(request) def logout(self, request): try: request.user.auth_token.delete() except (AttributeError, ObjectDoesNotExist): pass logout(request) log.info('Logout Successful | %s' % request.user) content = {'success': settings.USERS_LOGOUT_MSG} return Response(content, status=status.HTTP_200_OK)Am i missing something? What needs to be done to auto generate the schema?