2023-03-30 11:32:59 -07:00
|
|
|
from drf_spectacular.utils import extend_schema_serializer
|
2021-10-12 12:27:12 -04:00
|
|
|
from rest_framework import serializers
|
|
|
|
|
2022-07-13 16:18:55 -04:00
|
|
|
from netbox.api.serializers import WritableNestedSerializer
|
2021-10-12 12:27:12 -04:00
|
|
|
from wireless.models import *
|
|
|
|
|
|
|
|
__all__ = (
|
2021-10-12 17:02:53 -04:00
|
|
|
'NestedWirelessLANSerializer',
|
2021-10-13 16:40:12 -04:00
|
|
|
'NestedWirelessLANGroupSerializer',
|
2021-10-13 09:46:17 -04:00
|
|
|
'NestedWirelessLinkSerializer',
|
2021-10-12 12:27:12 -04:00
|
|
|
)
|
|
|
|
|
|
|
|
|
2023-03-30 11:32:59 -07:00
|
|
|
@extend_schema_serializer(
|
|
|
|
exclude_fields=('wirelesslan_count',),
|
|
|
|
)
|
2021-10-13 16:40:12 -04:00
|
|
|
class NestedWirelessLANGroupSerializer(WritableNestedSerializer):
|
|
|
|
url = serializers.HyperlinkedIdentityField(view_name='wireless-api:wirelesslangroup-detail')
|
|
|
|
wirelesslan_count = serializers.IntegerField(read_only=True)
|
|
|
|
_depth = serializers.IntegerField(source='level', read_only=True)
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
model = WirelessLANGroup
|
|
|
|
fields = ['id', 'url', 'display', 'name', 'slug', 'wirelesslan_count', '_depth']
|
|
|
|
|
|
|
|
|
2021-10-12 17:02:53 -04:00
|
|
|
class NestedWirelessLANSerializer(WritableNestedSerializer):
|
2021-10-13 09:46:17 -04:00
|
|
|
url = serializers.HyperlinkedIdentityField(view_name='wireless-api:wirelesslan-detail')
|
2021-10-12 12:27:12 -04:00
|
|
|
|
|
|
|
class Meta:
|
2021-10-12 17:02:53 -04:00
|
|
|
model = WirelessLAN
|
|
|
|
fields = ['id', 'url', 'display', 'ssid']
|
2021-10-13 09:46:17 -04:00
|
|
|
|
|
|
|
|
|
|
|
class NestedWirelessLinkSerializer(WritableNestedSerializer):
|
|
|
|
url = serializers.HyperlinkedIdentityField(view_name='wireless-api:wirelesslink-detail')
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
model = WirelessLink
|
|
|
|
fields = ['id', 'url', 'display', 'ssid']
|