From ed0e212ce0737a8fc96dab2d8bee298a1f899a8c Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Thu, 13 Aug 2020 10:30:28 -0400 Subject: [PATCH] Closes #4994: Add cable attribute to PowerFeed API serializer --- docs/release-notes/version-2.9.md | 2 ++ netbox/dcim/api/nested_serializers.py | 2 +- netbox/dcim/api/serializers.py | 3 ++- netbox/dcim/tests/test_api.py | 2 +- 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/release-notes/version-2.9.md b/docs/release-notes/version-2.9.md index e8d655ab6..02808945f 100644 --- a/docs/release-notes/version-2.9.md +++ b/docs/release-notes/version-2.9.md @@ -12,6 +12,7 @@ * [#4946](https://github.com/netbox-community/netbox/issues/4946) - Extend ObjectPermission to OR multiple constraints * [#4969](https://github.com/netbox-community/netbox/issues/4969) - Replace secret role user/group assignment with object permissions * [#4982](https://github.com/netbox-community/netbox/issues/4982) - Extended ObjectVar to allow filtering API query +* [#4994](https://github.com/netbox-community/netbox/issues/4994) - Add `cable` attribute to PowerFeed API serializer ### Bug Fixes @@ -99,6 +100,7 @@ When running a report or custom script, its execution is now queued for backgrou * dcim.FrontPortTemplate: Added `description` and `label` fields * dcim.Interface: Added `label` field * dcim.InterfaceTemplate: Added `description` and `label` fields +* dcim.PowerFeed: Added `cable` field * dcim.PowerPanel: Added `tags` field * dcim.PowerPort: Added ``label` field * dcim.PowerPortTemplate: Added `description` and `label` fields diff --git a/netbox/dcim/api/nested_serializers.py b/netbox/dcim/api/nested_serializers.py index 141aca013..3bc953991 100644 --- a/netbox/dcim/api/nested_serializers.py +++ b/netbox/dcim/api/nested_serializers.py @@ -355,4 +355,4 @@ class NestedPowerFeedSerializer(WritableNestedSerializer): class Meta: model = models.PowerFeed - fields = ['id', 'url', 'name'] + fields = ['id', 'url', 'name', 'cable'] diff --git a/netbox/dcim/api/serializers.py b/netbox/dcim/api/serializers.py index d33af5b5c..50c1f99ff 100644 --- a/netbox/dcim/api/serializers.py +++ b/netbox/dcim/api/serializers.py @@ -782,10 +782,11 @@ class PowerFeedSerializer(TaggedObjectSerializer, CustomFieldModelSerializer): choices=PowerFeedPhaseChoices, default=PowerFeedPhaseChoices.PHASE_SINGLE ) + cable = NestedCableSerializer(read_only=True) class Meta: model = PowerFeed fields = [ 'id', 'url', 'power_panel', 'rack', 'name', 'status', 'type', 'supply', 'phase', 'voltage', 'amperage', - 'max_utilization', 'comments', 'tags', 'custom_fields', 'created', 'last_updated', + 'max_utilization', 'comments', 'tags', 'custom_fields', 'created', 'last_updated', 'cable', ] diff --git a/netbox/dcim/tests/test_api.py b/netbox/dcim/tests/test_api.py index b6788eabe..c3ffecdff 100644 --- a/netbox/dcim/tests/test_api.py +++ b/netbox/dcim/tests/test_api.py @@ -1959,7 +1959,7 @@ class PowerPanelTest(APIViewTestCases.APIViewTestCase): class PowerFeedTest(APIViewTestCases.APIViewTestCase): model = PowerFeed - brief_fields = ['id', 'name', 'url'] + brief_fields = ['cable', 'id', 'name', 'url'] @classmethod def setUpTestData(cls):