mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-26 17:26:10 -06:00
11432 DRY
This commit is contained in:
parent
f56db90275
commit
36d3c84803
@ -31,28 +31,25 @@ from wireless.models import WirelessLAN
|
|||||||
from .nested_serializers import *
|
from .nested_serializers import *
|
||||||
|
|
||||||
|
|
||||||
class ReadonlyDeviceMixin:
|
class BaseReadonlyDeviceMixin:
|
||||||
|
field_name = 'device'
|
||||||
|
|
||||||
def get_fields(self, *args, **kwargs):
|
def get_fields(self, *args, **kwargs):
|
||||||
fields = super().get_fields(*args, **kwargs)
|
fields = super().get_fields(*args, **kwargs)
|
||||||
|
|
||||||
# get_extra_kwargs doesn't work if field explicitly declared on serializer...
|
# get_extra_kwargs doesn't work if field explicitly declared on serializer...
|
||||||
if (self.instance):
|
if (self.instance):
|
||||||
fields['device'].read_only = True
|
fields[self.field_name].read_only = True
|
||||||
|
|
||||||
return fields
|
return fields
|
||||||
|
|
||||||
|
|
||||||
class ReadonlyDeviceTypeMixin:
|
class ReadonlyDeviceMixin(BaseReadonlyDeviceMixin):
|
||||||
|
field_name = 'device'
|
||||||
|
|
||||||
def get_fields(self, *args, **kwargs):
|
|
||||||
fields = super().get_fields(*args, **kwargs)
|
|
||||||
|
|
||||||
# get_extra_kwargs doesn't work if field explicitly declared on serializer...
|
class ReadonlyDeviceTypeMixin(BaseReadonlyDeviceMixin):
|
||||||
if (self.instance):
|
field_name = 'device_type'
|
||||||
fields['device_type'].read_only = True
|
|
||||||
|
|
||||||
return fields
|
|
||||||
|
|
||||||
|
|
||||||
class CabledObjectSerializer(serializers.ModelSerializer):
|
class CabledObjectSerializer(serializers.ModelSerializer):
|
||||||
|
Loading…
Reference in New Issue
Block a user