mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-26 09:16:10 -06:00
9608 try setting serializer_class for APIView
This commit is contained in:
parent
cd047881b9
commit
a949de8d5f
@ -2,7 +2,7 @@ import socket
|
||||
|
||||
from django.http import Http404, HttpResponse, HttpResponseForbidden
|
||||
from django.shortcuts import get_object_or_404
|
||||
from drf_spectacular.utils import OpenApiParameter
|
||||
from drf_spectacular.utils import extend_schema, extend_schema_view, OpenApiParameter
|
||||
from drf_spectacular.types import OpenApiTypes
|
||||
from rest_framework.decorators import action
|
||||
from rest_framework.response import Response
|
||||
@ -725,10 +725,12 @@ class ConnectedDeviceViewSet(ViewSet):
|
||||
required=True,
|
||||
type=OpenApiTypes.STR
|
||||
)
|
||||
serializer_class = serializers.DeviceSerializer # for drf-spectacular
|
||||
|
||||
def get_view_name(self):
|
||||
return "Connected Device Locator"
|
||||
|
||||
@extend_schema(responses={200: OpenApiTypes.OBJECT})
|
||||
def list(self, request):
|
||||
|
||||
peer_device_name = request.query_params.get(self._device_param.name)
|
||||
|
@ -203,6 +203,7 @@ def get_results_limit(request):
|
||||
|
||||
class AvailablePrefixesView(ObjectValidationMixin, APIView):
|
||||
queryset = Prefix.objects.all()
|
||||
serializer_class = serializers.PrefixSerializer # for drf-spectacular
|
||||
|
||||
@extend_schema(methods=["get"], responses={200: serializers.AvailablePrefixSerializer(many=True)})
|
||||
def get(self, request, pk):
|
||||
@ -282,6 +283,7 @@ class AvailablePrefixesView(ObjectValidationMixin, APIView):
|
||||
|
||||
class AvailableIPAddressesView(ObjectValidationMixin, APIView):
|
||||
queryset = IPAddress.objects.all()
|
||||
serializer_class = serializers.IPAddressSerializer # for drf-spectacular
|
||||
|
||||
def get_parent(self, request, pk):
|
||||
raise NotImplemented()
|
||||
|
@ -5,6 +5,7 @@ from django.apps import apps
|
||||
from django.conf import settings
|
||||
from django_rq.queues import get_connection
|
||||
from drf_spectacular.utils import extend_schema
|
||||
from drf_spectacular.types import OpenApiTypes
|
||||
from rest_framework.response import Response
|
||||
from rest_framework.reverse import reverse
|
||||
from rest_framework.views import APIView
|
||||
@ -46,6 +47,7 @@ class StatusView(APIView):
|
||||
"""
|
||||
permission_classes = [IsAuthenticatedOrLoginNotRequired]
|
||||
|
||||
@extend_schema(responses={200: OpenApiTypes.OBJECT})
|
||||
def get(self, request):
|
||||
# Gather the version numbers from all installed Django apps
|
||||
installed_apps = {}
|
||||
|
@ -1,6 +1,8 @@
|
||||
from django.contrib.auth import authenticate
|
||||
from django.contrib.auth.models import Group, User
|
||||
from django.db.models import Count
|
||||
from drf_spectacular.utils import extend_schema
|
||||
from drf_spectacular.types import OpenApiTypes
|
||||
from rest_framework.exceptions import AuthenticationFailed
|
||||
from rest_framework.permissions import IsAuthenticated
|
||||
from rest_framework.response import Response
|
||||
@ -68,6 +70,7 @@ class TokenProvisionView(APIView):
|
||||
"""
|
||||
permission_classes = []
|
||||
|
||||
@extend_schema(methods=["post"], responses={201: serializers.TokenSerializer})
|
||||
def post(self, request):
|
||||
serializer = serializers.TokenProvisionSerializer(data=request.data)
|
||||
serializer.is_valid()
|
||||
@ -114,6 +117,7 @@ class UserConfigViewSet(ViewSet):
|
||||
def get_queryset(self):
|
||||
return UserConfig.objects.filter(user=self.request.user)
|
||||
|
||||
@extend_schema(responses={200: OpenApiTypes.OBJECT})
|
||||
def list(self, request):
|
||||
"""
|
||||
Return the UserConfig for the currently authenticated User.
|
||||
@ -122,6 +126,7 @@ class UserConfigViewSet(ViewSet):
|
||||
|
||||
return Response(userconfig.data)
|
||||
|
||||
@extend_schema(methods=["patch"], responses={201: OpenApiTypes.OBJECT})
|
||||
def patch(self, request):
|
||||
"""
|
||||
Update the UserConfig for the currently authenticated User.
|
||||
|
Loading…
Reference in New Issue
Block a user