From 5856275347536284625a1f42f3cf669d6d4cdf2e Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Tue, 4 May 2021 15:56:36 -0400 Subject: [PATCH] Closes #5991: Remove display_name attribute from serializers --- docs/release-notes/version-2.12.md | 15 ++++++++++++++ netbox/dcim/api/nested_serializers.py | 6 +++--- netbox/dcim/api/serializers.py | 29 +++++++++++++-------------- netbox/dcim/tests/test_api.py | 6 +++--- netbox/extras/api/serializers.py | 7 +------ netbox/ipam/api/nested_serializers.py | 4 ++-- netbox/ipam/api/serializers.py | 5 ++--- netbox/ipam/tests/test_api.py | 4 ++-- 8 files changed, 42 insertions(+), 34 deletions(-) diff --git a/docs/release-notes/version-2.12.md b/docs/release-notes/version-2.12.md index 548868a3d..598237e76 100644 --- a/docs/release-notes/version-2.12.md +++ b/docs/release-notes/version-2.12.md @@ -6,3 +6,18 @@ * [#5532](https://github.com/netbox-community/netbox/issues/5532) - Drop support for Python 3.6 * [#5994](https://github.com/netbox-community/netbox/issues/5994) - Drop support for `display_field` argument on ObjectVar + +### REST API Changes + +* dcim.Device + * Removed the `display_name` attribute (use `display` instead) +* dcim.DeviceType + * Removed the `display_name` attribute (use `display` instead) +* dcim.Rack + * Removed the `display_name` attribute (use `display` instead) +* extras.ContentType + * Removed the `display_name` attribute (use `display` instead) +* ipam.VLAN + * Removed the `display_name` attribute (use `display` instead) +* ipam.VRF + * Removed the `display_name` attribute (use `display` instead) diff --git a/netbox/dcim/api/nested_serializers.py b/netbox/dcim/api/nested_serializers.py index 80e003efc..67ae9b046 100644 --- a/netbox/dcim/api/nested_serializers.py +++ b/netbox/dcim/api/nested_serializers.py @@ -101,7 +101,7 @@ class NestedRackSerializer(WritableNestedSerializer): class Meta: model = models.Rack - fields = ['id', 'url', 'display', 'name', 'display_name', 'device_count'] + fields = ['id', 'url', 'display', 'name', 'device_count'] class NestedRackReservationSerializer(WritableNestedSerializer): @@ -136,7 +136,7 @@ class NestedDeviceTypeSerializer(WritableNestedSerializer): class Meta: model = models.DeviceType - fields = ['id', 'url', 'display', 'manufacturer', 'model', 'slug', 'display_name', 'device_count'] + fields = ['id', 'url', 'display', 'manufacturer', 'model', 'slug', 'device_count'] class NestedConsolePortTemplateSerializer(WritableNestedSerializer): @@ -232,7 +232,7 @@ class NestedDeviceSerializer(WritableNestedSerializer): class Meta: model = models.Device - fields = ['id', 'url', 'display', 'name', 'display_name'] + fields = ['id', 'url', 'display', 'name'] class NestedConsoleServerPortSerializer(WritableNestedSerializer): diff --git a/netbox/dcim/api/serializers.py b/netbox/dcim/api/serializers.py index 377449140..d2ecad608 100644 --- a/netbox/dcim/api/serializers.py +++ b/netbox/dcim/api/serializers.py @@ -172,10 +172,9 @@ class RackSerializer(PrimaryModelSerializer): class Meta: model = Rack fields = [ - 'id', 'url', 'display', 'name', 'facility_id', 'display_name', 'site', 'location', 'tenant', 'status', - 'role', 'serial', 'asset_tag', 'type', 'width', 'u_height', 'desc_units', 'outer_width', 'outer_depth', - 'outer_unit', 'comments', 'tags', 'custom_fields', 'created', 'last_updated', 'device_count', - 'powerfeed_count', + 'id', 'url', 'display', 'name', 'facility_id', 'site', 'location', 'tenant', 'status', 'role', 'serial', + 'asset_tag', 'type', 'width', 'u_height', 'desc_units', 'outer_width', 'outer_depth', 'outer_unit', + 'comments', 'tags', 'custom_fields', 'created', 'last_updated', 'device_count', 'powerfeed_count', ] # Omit the UniqueTogetherValidator that would be automatically added to validate (location, facility_id). This # prevents facility_id from being interpreted as a required field. @@ -284,9 +283,9 @@ class DeviceTypeSerializer(PrimaryModelSerializer): class Meta: model = DeviceType fields = [ - 'id', 'url', 'display', 'manufacturer', 'model', 'slug', 'display_name', 'part_number', 'u_height', - 'is_full_depth', 'subdevice_role', 'front_image', 'rear_image', 'comments', 'tags', 'custom_fields', - 'created', 'last_updated', 'device_count', + 'id', 'url', 'display', 'manufacturer', 'model', 'slug', 'part_number', 'u_height', 'is_full_depth', + 'subdevice_role', 'front_image', 'rear_image', 'comments', 'tags', 'custom_fields', 'created', + 'last_updated', 'device_count', ] @@ -465,10 +464,10 @@ class DeviceSerializer(PrimaryModelSerializer): class Meta: model = Device fields = [ - 'id', 'url', 'display', 'name', 'display_name', 'device_type', 'device_role', 'tenant', 'platform', - 'serial', 'asset_tag', 'site', 'location', 'rack', 'position', 'face', 'parent_device', 'status', - 'primary_ip', 'primary_ip4', 'primary_ip6', 'cluster', 'virtual_chassis', 'vc_position', 'vc_priority', - 'comments', 'local_context_data', 'tags', 'custom_fields', 'created', 'last_updated', + 'id', 'url', 'display', 'name', 'device_type', 'device_role', 'tenant', 'platform', 'serial', 'asset_tag', + 'site', 'location', 'rack', 'position', 'face', 'parent_device', 'status', 'primary_ip', 'primary_ip4', + 'primary_ip6', 'cluster', 'virtual_chassis', 'vc_position', 'vc_priority', 'comments', 'local_context_data', + 'tags', 'custom_fields', 'created', 'last_updated', ] validators = [] @@ -501,10 +500,10 @@ class DeviceWithConfigContextSerializer(DeviceSerializer): class Meta(DeviceSerializer.Meta): fields = [ - 'id', 'url', 'display', 'name', 'display_name', 'device_type', 'device_role', 'tenant', 'platform', - 'serial', 'asset_tag', 'site', 'location', 'rack', 'position', 'face', 'parent_device', 'status', - 'primary_ip', 'primary_ip4', 'primary_ip6', 'cluster', 'virtual_chassis', 'vc_position', 'vc_priority', - 'comments', 'local_context_data', 'tags', 'custom_fields', 'config_context', 'created', 'last_updated', + 'id', 'url', 'display', 'name', 'device_type', 'device_role', 'tenant', 'platform', 'serial', 'asset_tag', + 'site', 'location', 'rack', 'position', 'face', 'parent_device', 'status', 'primary_ip', 'primary_ip4', + 'primary_ip6', 'cluster', 'virtual_chassis', 'vc_position', 'vc_priority', 'comments', 'local_context_data', + 'tags', 'custom_fields', 'config_context', 'created', 'last_updated', ] @swagger_serializer_method(serializer_or_field=serializers.DictField) diff --git a/netbox/dcim/tests/test_api.py b/netbox/dcim/tests/test_api.py index 24130c649..92ffd1207 100644 --- a/netbox/dcim/tests/test_api.py +++ b/netbox/dcim/tests/test_api.py @@ -251,7 +251,7 @@ class RackRoleTest(APIViewTestCases.APIViewTestCase): class RackTest(APIViewTestCases.APIViewTestCase): model = Rack - brief_fields = ['device_count', 'display', 'display_name', 'id', 'name', 'url'] + brief_fields = ['device_count', 'display', 'id', 'name', 'url'] bulk_update_data = { 'status': 'planned', } @@ -422,7 +422,7 @@ class ManufacturerTest(APIViewTestCases.APIViewTestCase): class DeviceTypeTest(APIViewTestCases.APIViewTestCase): model = DeviceType - brief_fields = ['device_count', 'display', 'display_name', 'id', 'manufacturer', 'model', 'slug', 'url'] + brief_fields = ['device_count', 'display', 'id', 'manufacturer', 'model', 'slug', 'url'] bulk_update_data = { 'part_number': 'ABC123', } @@ -870,7 +870,7 @@ class PlatformTest(APIViewTestCases.APIViewTestCase): class DeviceTest(APIViewTestCases.APIViewTestCase): model = Device - brief_fields = ['display', 'display_name', 'id', 'name', 'url'] + brief_fields = ['display', 'id', 'name', 'url'] bulk_update_data = { 'status': 'failed', } diff --git a/netbox/extras/api/serializers.py b/netbox/extras/api/serializers.py index 66627bfbc..536df1c75 100644 --- a/netbox/extras/api/serializers.py +++ b/netbox/extras/api/serializers.py @@ -453,12 +453,7 @@ class ObjectChangeSerializer(BaseModelSerializer): class ContentTypeSerializer(BaseModelSerializer): url = serializers.HyperlinkedIdentityField(view_name='extras-api:contenttype-detail') - display_name = serializers.SerializerMethodField() class Meta: model = ContentType - fields = ['id', 'url', 'display', 'app_label', 'model', 'display_name'] - - @swagger_serializer_method(serializer_or_field=serializers.CharField) - def get_display_name(self, obj): - return obj.app_labeled_name + fields = ['id', 'url', 'display', 'app_label', 'model'] diff --git a/netbox/ipam/api/nested_serializers.py b/netbox/ipam/api/nested_serializers.py index a5eb63911..f2aa5f19e 100644 --- a/netbox/ipam/api/nested_serializers.py +++ b/netbox/ipam/api/nested_serializers.py @@ -27,7 +27,7 @@ class NestedVRFSerializer(WritableNestedSerializer): class Meta: model = models.VRF - fields = ['id', 'url', 'display', 'name', 'rd', 'display_name', 'prefix_count'] + fields = ['id', 'url', 'display', 'name', 'rd', 'prefix_count'] # @@ -92,7 +92,7 @@ class NestedVLANSerializer(WritableNestedSerializer): class Meta: model = models.VLAN - fields = ['id', 'url', 'display', 'vid', 'name', 'display_name'] + fields = ['id', 'url', 'display', 'vid', 'name'] # diff --git a/netbox/ipam/api/serializers.py b/netbox/ipam/api/serializers.py index 931e2cc47..324c4de03 100644 --- a/netbox/ipam/api/serializers.py +++ b/netbox/ipam/api/serializers.py @@ -44,8 +44,7 @@ class VRFSerializer(PrimaryModelSerializer): model = VRF fields = [ 'id', 'url', 'display', 'name', 'rd', 'tenant', 'enforce_unique', 'description', 'import_targets', - 'export_targets', 'tags', 'display_name', 'custom_fields', 'created', 'last_updated', 'ipaddress_count', - 'prefix_count', + 'export_targets', 'tags', 'custom_fields', 'created', 'last_updated', 'ipaddress_count', 'prefix_count', ] @@ -167,7 +166,7 @@ class VLANSerializer(PrimaryModelSerializer): model = VLAN fields = [ 'id', 'url', 'display', 'site', 'group', 'vid', 'name', 'tenant', 'status', 'role', 'description', 'tags', - 'display_name', 'custom_fields', 'created', 'last_updated', 'prefix_count', + 'custom_fields', 'created', 'last_updated', 'prefix_count', ] validators = [] diff --git a/netbox/ipam/tests/test_api.py b/netbox/ipam/tests/test_api.py index b2b4b9e8f..0de07b06b 100644 --- a/netbox/ipam/tests/test_api.py +++ b/netbox/ipam/tests/test_api.py @@ -22,7 +22,7 @@ class AppTest(APITestCase): class VRFTest(APIViewTestCases.APIViewTestCase): model = VRF - brief_fields = ['display', 'display_name', 'id', 'name', 'prefix_count', 'rd', 'url'] + brief_fields = ['display', 'id', 'name', 'prefix_count', 'rd', 'url'] create_data = [ { 'name': 'VRF 4', @@ -421,7 +421,7 @@ class VLANGroupTest(APIViewTestCases.APIViewTestCase): class VLANTest(APIViewTestCases.APIViewTestCase): model = VLAN - brief_fields = ['display', 'display_name', 'id', 'name', 'url', 'vid'] + brief_fields = ['display', 'id', 'name', 'url', 'vid'] bulk_update_data = { 'description': 'New description', }