Просмотр исходного кода

Renamed ChoiceFieldSerializer and ContentTypeFieldSerializer

Jeremy Stretch 7 лет назад
Родитель
Сommit
c2416411c1

+ 2 - 2
netbox/circuits/api/serializers.py

@@ -8,7 +8,7 @@ from circuits.models import Provider, Circuit, CircuitTermination, CircuitType
 from dcim.api.serializers import NestedSiteSerializer, InterfaceSerializer
 from extras.api.customfields import CustomFieldModelSerializer
 from tenancy.api.serializers import NestedTenantSerializer
-from utilities.api import ChoiceFieldSerializer, TagField, ValidatedModelSerializer, WritableNestedSerializer
+from utilities.api import ChoiceField, TagField, ValidatedModelSerializer, WritableNestedSerializer
 
 
 #
@@ -59,7 +59,7 @@ class NestedCircuitTypeSerializer(WritableNestedSerializer):
 
 class CircuitSerializer(CustomFieldModelSerializer):
     provider = NestedProviderSerializer()
-    status = ChoiceFieldSerializer(choices=CIRCUIT_STATUS_CHOICES, required=False)
+    status = ChoiceField(choices=CIRCUIT_STATUS_CHOICES, required=False)
     type = NestedCircuitTypeSerializer()
     tenant = NestedTenantSerializer(required=False, allow_null=True)
     tags = TagField(queryset=Tag.objects.all(), required=False, many=True)

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

@@ -20,7 +20,7 @@ from ipam.models import IPAddress, VLAN
 from tenancy.api.serializers import NestedTenantSerializer
 from users.api.serializers import NestedUserSerializer
 from utilities.api import (
-    ChoiceFieldSerializer, SerializedPKRelatedField, TagField, TimeZoneField, ValidatedModelSerializer,
+    ChoiceField, SerializedPKRelatedField, TagField, TimeZoneField, ValidatedModelSerializer,
     WritableNestedSerializer,
 )
 from virtualization.models import Cluster
@@ -51,7 +51,7 @@ class RegionSerializer(serializers.ModelSerializer):
 #
 
 class SiteSerializer(CustomFieldModelSerializer):
-    status = ChoiceFieldSerializer(choices=SITE_STATUS_CHOICES, required=False)
+    status = ChoiceField(choices=SITE_STATUS_CHOICES, required=False)
     region = NestedRegionSerializer(required=False, allow_null=True)
     tenant = NestedTenantSerializer(required=False, allow_null=True)
     time_zone = TimeZoneField(required=False)
@@ -123,8 +123,8 @@ class RackSerializer(CustomFieldModelSerializer):
     group = NestedRackGroupSerializer(required=False, allow_null=True)
     tenant = NestedTenantSerializer(required=False, allow_null=True)
     role = NestedRackRoleSerializer(required=False, allow_null=True)
-    type = ChoiceFieldSerializer(choices=RACK_TYPE_CHOICES, required=False)
-    width = ChoiceFieldSerializer(choices=RACK_WIDTH_CHOICES, required=False)
+    type = ChoiceField(choices=RACK_TYPE_CHOICES, required=False)
+    width = ChoiceField(choices=RACK_WIDTH_CHOICES, required=False)
     tags = TagField(queryset=Tag.objects.all(), required=False, many=True)
 
     class Meta:
@@ -222,8 +222,8 @@ class NestedManufacturerSerializer(WritableNestedSerializer):
 
 class DeviceTypeSerializer(CustomFieldModelSerializer):
     manufacturer = NestedManufacturerSerializer()
-    interface_ordering = ChoiceFieldSerializer(choices=IFACE_ORDERING_CHOICES, required=False)
-    subdevice_role = ChoiceFieldSerializer(choices=SUBDEVICE_ROLE_CHOICES, required=False)
+    interface_ordering = ChoiceField(choices=IFACE_ORDERING_CHOICES, required=False)
+    subdevice_role = ChoiceField(choices=SUBDEVICE_ROLE_CHOICES, required=False)
     instance_count = serializers.IntegerField(source='instances.count', read_only=True)
     tags = TagField(queryset=Tag.objects.all(), required=False, many=True)
 
@@ -299,7 +299,7 @@ class PowerOutletTemplateSerializer(ValidatedModelSerializer):
 
 class InterfaceTemplateSerializer(ValidatedModelSerializer):
     device_type = NestedDeviceTypeSerializer()
-    form_factor = ChoiceFieldSerializer(choices=IFACE_FF_CHOICES, required=False)
+    form_factor = ChoiceField(choices=IFACE_FF_CHOICES, required=False)
 
     class Meta:
         model = InterfaceTemplate
@@ -396,8 +396,8 @@ class DeviceSerializer(CustomFieldModelSerializer):
     platform = NestedPlatformSerializer(required=False, allow_null=True)
     site = NestedSiteSerializer()
     rack = NestedRackSerializer(required=False, allow_null=True)
-    face = ChoiceFieldSerializer(choices=RACK_FACE_CHOICES, required=False)
-    status = ChoiceFieldSerializer(choices=DEVICE_STATUS_CHOICES, required=False)
+    face = ChoiceField(choices=RACK_FACE_CHOICES, required=False)
+    status = ChoiceField(choices=DEVICE_STATUS_CHOICES, required=False)
     primary_ip = DeviceIPAddressSerializer(read_only=True)
     primary_ip4 = DeviceIPAddressSerializer(required=False, allow_null=True)
     primary_ip6 = DeviceIPAddressSerializer(required=False, allow_null=True)
@@ -571,12 +571,12 @@ class InterfaceVLANSerializer(WritableNestedSerializer):
 
 class InterfaceSerializer(ValidatedModelSerializer):
     device = NestedDeviceSerializer()
-    form_factor = ChoiceFieldSerializer(choices=IFACE_FF_CHOICES, required=False)
+    form_factor = ChoiceField(choices=IFACE_FF_CHOICES, required=False)
     lag = NestedInterfaceSerializer(required=False, allow_null=True)
     is_connected = serializers.SerializerMethodField(read_only=True)
     interface_connection = serializers.SerializerMethodField(read_only=True)
     circuit_termination = InterfaceCircuitTerminationSerializer(read_only=True)
-    mode = ChoiceFieldSerializer(choices=IFACE_MODE_CHOICES, required=False)
+    mode = ChoiceField(choices=IFACE_MODE_CHOICES, required=False)
     untagged_vlan = InterfaceVLANSerializer(required=False, allow_null=True)
     tagged_vlans = SerializedPKRelatedField(
         queryset=VLAN.objects.all(),
@@ -684,7 +684,7 @@ class InventoryItemSerializer(ValidatedModelSerializer):
 class InterfaceConnectionSerializer(ValidatedModelSerializer):
     interface_a = NestedInterfaceSerializer()
     interface_b = NestedInterfaceSerializer()
-    connection_status = ChoiceFieldSerializer(choices=CONNECTION_STATUS_CHOICES, required=False)
+    connection_status = ChoiceField(choices=CONNECTION_STATUS_CHOICES, required=False)
 
     class Meta:
         model = InterfaceConnection
@@ -704,7 +704,7 @@ class ContextualInterfaceConnectionSerializer(serializers.ModelSerializer):
     A read-only representation of an InterfaceConnection from the perspective of either of its two connected Interfaces.
     """
     interface = serializers.SerializerMethodField(read_only=True)
-    connection_status = ChoiceFieldSerializer(choices=CONNECTION_STATUS_CHOICES, read_only=True)
+    connection_status = ChoiceField(choices=CONNECTION_STATUS_CHOICES, read_only=True)
 
     class Meta:
         model = InterfaceConnection

+ 6 - 6
netbox/extras/api/serializers.py

@@ -16,7 +16,7 @@ from extras.constants import *
 from tenancy.api.serializers import NestedTenantSerializer, NestedTenantGroupSerializer
 from users.api.serializers import NestedUserSerializer
 from utilities.api import (
-    ChoiceFieldSerializer, ContentTypeFieldSerializer, get_serializer_for_model, ValidatedModelSerializer,
+    ChoiceField, ContentTypeField, get_serializer_for_model, ValidatedModelSerializer,
 )
 
 
@@ -25,7 +25,7 @@ from utilities.api import (
 #
 
 class GraphSerializer(ValidatedModelSerializer):
-    type = ChoiceFieldSerializer(choices=GRAPH_TYPE_CHOICES)
+    type = ChoiceField(choices=GRAPH_TYPE_CHOICES)
 
     class Meta:
         model = Graph
@@ -35,7 +35,7 @@ class GraphSerializer(ValidatedModelSerializer):
 class RenderedGraphSerializer(serializers.ModelSerializer):
     embed_url = serializers.SerializerMethodField()
     embed_link = serializers.SerializerMethodField()
-    type = ChoiceFieldSerializer(choices=GRAPH_TYPE_CHOICES)
+    type = ChoiceField(choices=GRAPH_TYPE_CHOICES)
 
     class Meta:
         model = Graph
@@ -88,7 +88,7 @@ class TagSerializer(ValidatedModelSerializer):
 #
 
 class ImageAttachmentSerializer(ValidatedModelSerializer):
-    content_type = ContentTypeFieldSerializer()
+    content_type = ContentTypeField()
     parent = serializers.SerializerMethodField(read_only=True)
 
     class Meta:
@@ -188,7 +188,7 @@ class ReportDetailSerializer(ReportSerializer):
 
 class ObjectChangeSerializer(serializers.ModelSerializer):
     user = NestedUserSerializer(read_only=True)
-    content_type = ContentTypeFieldSerializer(read_only=True)
+    content_type = ContentTypeField(read_only=True)
     changed_object = serializers.SerializerMethodField(read_only=True)
 
     class Meta:
@@ -217,7 +217,7 @@ class ObjectChangeSerializer(serializers.ModelSerializer):
 
 class UserActionSerializer(serializers.ModelSerializer):
     user = NestedUserSerializer()
-    action = ChoiceFieldSerializer(choices=ACTION_CHOICES)
+    action = ChoiceField(choices=ACTION_CHOICES)
 
     class Meta:
         model = UserAction

+ 6 - 6
netbox/ipam/api/serializers.py

@@ -16,7 +16,7 @@ from ipam.constants import (
 from ipam.models import Aggregate, IPAddress, Prefix, RIR, Role, Service, VLAN, VLANGroup, VRF
 from tenancy.api.serializers import NestedTenantSerializer
 from utilities.api import (
-    ChoiceFieldSerializer, SerializedPKRelatedField, TagField, ValidatedModelSerializer, WritableNestedSerializer,
+    ChoiceField, SerializedPKRelatedField, TagField, ValidatedModelSerializer, WritableNestedSerializer,
 )
 from virtualization.api.serializers import NestedVirtualMachineSerializer
 
@@ -151,7 +151,7 @@ class VLANSerializer(CustomFieldModelSerializer):
     site = NestedSiteSerializer(required=False, allow_null=True)
     group = NestedVLANGroupSerializer(required=False, allow_null=True)
     tenant = NestedTenantSerializer(required=False, allow_null=True)
-    status = ChoiceFieldSerializer(choices=VLAN_STATUS_CHOICES, required=False)
+    status = ChoiceField(choices=VLAN_STATUS_CHOICES, required=False)
     role = NestedRoleSerializer(required=False, allow_null=True)
     tags = TagField(queryset=Tag.objects.all(), required=False, many=True)
 
@@ -195,7 +195,7 @@ class PrefixSerializer(CustomFieldModelSerializer):
     vrf = NestedVRFSerializer(required=False, allow_null=True)
     tenant = NestedTenantSerializer(required=False, allow_null=True)
     vlan = NestedVLANSerializer(required=False, allow_null=True)
-    status = ChoiceFieldSerializer(choices=PREFIX_STATUS_CHOICES, required=False)
+    status = ChoiceField(choices=PREFIX_STATUS_CHOICES, required=False)
     role = NestedRoleSerializer(required=False, allow_null=True)
     tags = TagField(queryset=Tag.objects.all(), required=False, many=True)
 
@@ -257,8 +257,8 @@ class IPAddressInterfaceSerializer(serializers.ModelSerializer):
 class IPAddressSerializer(CustomFieldModelSerializer):
     vrf = NestedVRFSerializer(required=False, allow_null=True)
     tenant = NestedTenantSerializer(required=False, allow_null=True)
-    status = ChoiceFieldSerializer(choices=IPADDRESS_STATUS_CHOICES, required=False)
-    role = ChoiceFieldSerializer(choices=IPADDRESS_ROLE_CHOICES, required=False)
+    status = ChoiceField(choices=IPADDRESS_STATUS_CHOICES, required=False)
+    role = ChoiceField(choices=IPADDRESS_ROLE_CHOICES, required=False)
     interface = IPAddressInterfaceSerializer(required=False, allow_null=True)
     tags = TagField(queryset=Tag.objects.all(), required=False, many=True)
 
@@ -304,7 +304,7 @@ class AvailableIPSerializer(serializers.Serializer):
 class ServiceSerializer(CustomFieldModelSerializer):
     device = NestedDeviceSerializer(required=False, allow_null=True)
     virtual_machine = NestedVirtualMachineSerializer(required=False, allow_null=True)
-    protocol = ChoiceFieldSerializer(choices=IP_PROTOCOL_CHOICES)
+    protocol = ChoiceField(choices=IP_PROTOCOL_CHOICES)
     ipaddresses = SerializedPKRelatedField(
         queryset=IPAddress.objects.all(),
         serializer=NestedIPAddressSerializer,

+ 3 - 4
netbox/utilities/api.py

@@ -63,7 +63,6 @@ class TagField(RelatedField):
     """
     Represent a writable list of Tags associated with an object (use with many=True).
     """
-
     def to_internal_value(self, data):
         obj = self.parent.parent.instance
         content_type = ContentType.objects.get_for_model(obj)
@@ -74,7 +73,7 @@ class TagField(RelatedField):
         return value.name
 
 
-class ChoiceFieldSerializer(Field):
+class ChoiceField(Field):
     """
     Represent a ChoiceField as {'value': <DB value>, 'label': <string>}.
     """
@@ -87,7 +86,7 @@ class ChoiceFieldSerializer(Field):
                     self._choices[k2] = v2
             else:
                 self._choices[k] = v
-        super(ChoiceFieldSerializer, self).__init__(**kwargs)
+        super(ChoiceField, self).__init__(**kwargs)
 
     def to_representation(self, obj):
         return {'value': obj, 'label': self._choices[obj]}
@@ -96,7 +95,7 @@ class ChoiceFieldSerializer(Field):
         return data
 
 
-class ContentTypeFieldSerializer(Field):
+class ContentTypeField(Field):
     """
     Represent a ContentType as '<app_label>.<model>'
     """

+ 2 - 2
netbox/utilities/custom_inspectors.py

@@ -3,7 +3,7 @@ from drf_yasg.inspectors import FieldInspector, NotHandled, PaginatorInspector,
 from rest_framework.fields import ChoiceField
 
 from extras.api.customfields import CustomFieldsSerializer
-from utilities.api import ChoiceFieldSerializer
+from utilities.api import ChoiceField
 
 
 class CustomChoiceFieldInspector(FieldInspector):
@@ -12,7 +12,7 @@ class CustomChoiceFieldInspector(FieldInspector):
         # https://drf-yasg.readthedocs.io/en/stable/_modules/drf_yasg/inspectors/base.html#FieldInspector._get_partial_types
         SwaggerType, _ = self._get_partial_types(field, swagger_object_type, use_references, **kwargs)
 
-        if isinstance(field, ChoiceFieldSerializer):
+        if isinstance(field, ChoiceField):
             value_schema = openapi.Schema(type=openapi.TYPE_INTEGER)
 
             choices = list(field._choices.keys())

+ 3 - 3
netbox/virtualization/api/serializers.py

@@ -9,7 +9,7 @@ from dcim.models import Interface
 from extras.api.customfields import CustomFieldModelSerializer
 from ipam.models import IPAddress, VLAN
 from tenancy.api.serializers import NestedTenantSerializer
-from utilities.api import ChoiceFieldSerializer, TagField, ValidatedModelSerializer, WritableNestedSerializer
+from utilities.api import ChoiceField, TagField, ValidatedModelSerializer, WritableNestedSerializer
 from virtualization.constants import VM_STATUS_CHOICES
 from virtualization.models import Cluster, ClusterGroup, ClusterType, VirtualMachine
 
@@ -91,7 +91,7 @@ class VirtualMachineIPAddressSerializer(serializers.ModelSerializer):
 
 
 class VirtualMachineSerializer(CustomFieldModelSerializer):
-    status = ChoiceFieldSerializer(choices=VM_STATUS_CHOICES, required=False)
+    status = ChoiceField(choices=VM_STATUS_CHOICES, required=False)
     cluster = NestedClusterSerializer(required=False, allow_null=True)
     role = NestedDeviceRoleSerializer(required=False, allow_null=True)
     tenant = NestedTenantSerializer(required=False, allow_null=True)
@@ -145,7 +145,7 @@ class InterfaceVLANSerializer(serializers.ModelSerializer):
 
 class InterfaceSerializer(serializers.ModelSerializer):
     virtual_machine = NestedVirtualMachineSerializer()
-    mode = ChoiceFieldSerializer(choices=IFACE_MODE_CHOICES)
+    mode = ChoiceField(choices=IFACE_MODE_CHOICES)
     untagged_vlan = InterfaceVLANSerializer()
     tagged_vlans = InterfaceVLANSerializer(many=True)