Parcourir la source

Fixes #1043: Corrected queryset in WritableDeviceSerializer validation

Jeremy Stretch il y a 8 ans
Parent
commit
d4ac6dbfe4
2 fichiers modifiés avec 5 ajouts et 5 suppressions
  1. 1 1
      netbox/dcim/api/serializers.py
  2. 4 4
      netbox/dcim/api/views.py

+ 1 - 1
netbox/dcim/api/serializers.py

@@ -490,7 +490,7 @@ class WritableDeviceSerializer(serializers.ModelSerializer):
 
         # Validate uniqueness of (rack, position, face) since we omitted the automatically-created validator from Meta.
         if data.get('rack') and data.get('position') and data.get('face'):
-            validator = UniqueTogetherValidator(queryset=Rack.objects.all(), fields=('rack', 'position', 'face'))
+            validator = UniqueTogetherValidator(queryset=Device.objects.all(), fields=('rack', 'position', 'face'))
             validator.set_context(self)
             validator(data)
 

+ 4 - 4
netbox/dcim/api/views.py

@@ -2,16 +2,16 @@ from rest_framework.decorators import detail_route
 from rest_framework.mixins import ListModelMixin
 from rest_framework.permissions import IsAuthenticated
 from rest_framework.response import Response
-from rest_framework.viewsets import GenericViewSet, ModelViewSet, ReadOnlyModelViewSet, ViewSet
+from rest_framework.viewsets import GenericViewSet, ModelViewSet, ViewSet
 
 from django.conf import settings
 from django.shortcuts import get_object_or_404
 
 from dcim.models import (
     ConsolePort, ConsolePortTemplate, ConsoleServerPort, ConsoleServerPortTemplate, Device, DeviceBay,
-    DeviceBayTemplate, DeviceRole, DeviceType, Interface, InterfaceConnection, InterfaceTemplate, Manufacturer, InventoryItem,
-    Platform, PowerOutlet, PowerOutletTemplate, PowerPort, PowerPortTemplate, Rack, RackGroup, RackReservation,
-    RackRole, Region, Site,
+    DeviceBayTemplate, DeviceRole, DeviceType, Interface, InterfaceConnection, InterfaceTemplate, Manufacturer,
+    InventoryItem, Platform, PowerOutlet, PowerOutletTemplate, PowerPort, PowerPortTemplate, Rack, RackGroup,
+    RackReservation, RackRole, Region, Site,
 )
 from dcim import filters
 from extras.api.serializers import RenderedGraphSerializer