mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-20 10:16:42 -06:00
connected_endpoint must be read-only on termination serializers
This commit is contained in:
parent
4e9ace39ce
commit
cd243a90d0
@ -3,7 +3,7 @@ from taggit_serializer.serializers import TaggitSerializer, TagListSerializerFie
|
||||
|
||||
from circuits.constants import CIRCUIT_STATUS_CHOICES
|
||||
from circuits.models import Provider, Circuit, CircuitTermination, CircuitType
|
||||
from dcim.api.serializers import NestedCableSerializer, NestedSiteSerializer
|
||||
from dcim.api.serializers import NestedCableSerializer, NestedInterfaceSerializer, NestedSiteSerializer
|
||||
from extras.api.customfields import CustomFieldModelSerializer
|
||||
from tenancy.api.serializers import NestedTenantSerializer
|
||||
from utilities.api import ChoiceField, ValidatedModelSerializer, WritableNestedSerializer
|
||||
@ -85,12 +85,14 @@ class NestedCircuitSerializer(WritableNestedSerializer):
|
||||
class CircuitTerminationSerializer(ValidatedModelSerializer):
|
||||
circuit = NestedCircuitSerializer()
|
||||
site = NestedSiteSerializer()
|
||||
connected_endpoint = NestedInterfaceSerializer(read_only=True)
|
||||
cable = NestedCableSerializer(read_only=True)
|
||||
|
||||
class Meta:
|
||||
model = CircuitTermination
|
||||
fields = [
|
||||
'id', 'circuit', 'term_side', 'site', 'port_speed', 'upstream_speed', 'xconnect_id', 'pp_info', 'cable',
|
||||
'id', 'circuit', 'term_side', 'site', 'port_speed', 'upstream_speed', 'xconnect_id', 'pp_info',
|
||||
'connected_endpoint', 'cable',
|
||||
]
|
||||
|
||||
|
||||
|
@ -584,14 +584,13 @@ class NestedConsoleServerPortSerializer(WritableNestedSerializer):
|
||||
|
||||
class ConsolePortSerializer(TaggitSerializer, ValidatedModelSerializer):
|
||||
device = NestedDeviceSerializer()
|
||||
connected_endpoint = NestedConsoleServerPortSerializer(required=False, allow_null=True)
|
||||
connected_endpoint = NestedConsoleServerPortSerializer(read_only=True)
|
||||
cable = NestedCableSerializer(read_only=True)
|
||||
tags = TagListSerializerField(required=False)
|
||||
|
||||
class Meta:
|
||||
model = ConsolePort
|
||||
fields = ['id', 'device', 'name', 'connected_endpoint', 'connection_status', 'cable', 'tags']
|
||||
read_only_fields = ['connected_endpoint']
|
||||
|
||||
|
||||
class NestedConsolePortSerializer(TaggitSerializer, ValidatedModelSerializer):
|
||||
@ -633,14 +632,13 @@ class NestedPowerOutletSerializer(WritableNestedSerializer):
|
||||
|
||||
class PowerPortSerializer(TaggitSerializer, ValidatedModelSerializer):
|
||||
device = NestedDeviceSerializer()
|
||||
connected_endpoint = NestedPowerOutletSerializer(required=False, allow_null=True)
|
||||
connected_endpoint = NestedPowerOutletSerializer(read_only=True)
|
||||
cable = NestedCableSerializer(read_only=True)
|
||||
tags = TagListSerializerField(required=False)
|
||||
|
||||
class Meta:
|
||||
model = PowerPort
|
||||
fields = ['id', 'device', 'name', 'connected_endpoint', 'connection_status', 'cable', 'tags']
|
||||
read_only_fields = ['connected_endpoint']
|
||||
|
||||
|
||||
class NestedPowerPortSerializer(TaggitSerializer, ValidatedModelSerializer):
|
||||
|
@ -2003,7 +2003,6 @@ class ConsolePortTest(APITestCase):
|
||||
data = {
|
||||
'device': self.device.pk,
|
||||
'name': 'Test Console Port X',
|
||||
'connected_endpoint': consoleserverport.pk,
|
||||
}
|
||||
|
||||
url = reverse('dcim-api:consoleport-detail', kwargs={'pk': self.consoleport1.pk})
|
||||
@ -2013,7 +2012,6 @@ class ConsolePortTest(APITestCase):
|
||||
self.assertEqual(ConsolePort.objects.count(), 3)
|
||||
consoleport1 = ConsolePort.objects.get(pk=response.data['id'])
|
||||
self.assertEqual(consoleport1.name, data['name'])
|
||||
self.assertEqual(consoleport1.connected_endpoint_id, data['connected_endpoint'])
|
||||
|
||||
def test_delete_consoleport(self):
|
||||
|
||||
@ -2229,7 +2227,6 @@ class PowerPortTest(APITestCase):
|
||||
data = {
|
||||
'device': self.device.pk,
|
||||
'name': 'Test Power Port X',
|
||||
'connected_endpoint': poweroutlet.pk,
|
||||
}
|
||||
|
||||
url = reverse('dcim-api:powerport-detail', kwargs={'pk': self.powerport1.pk})
|
||||
@ -2239,7 +2236,6 @@ class PowerPortTest(APITestCase):
|
||||
self.assertEqual(PowerPort.objects.count(), 3)
|
||||
powerport1 = PowerPort.objects.get(pk=response.data['id'])
|
||||
self.assertEqual(powerport1.name, data['name'])
|
||||
self.assertEqual(powerport1.connected_endpoint_id, data['connected_endpoint'])
|
||||
|
||||
def test_delete_powerport(self):
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user