/
creator
/
ecstasy
Обзор
Документация
Войти
/
creator
/
ecstasy
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ring_manager/api/serializers.py
35 строк
1 KB
ig-rudenko
v 17.7.13
15 фев 2024, 12:08
15 фев 2024, 12:08
50a889c
Код
Авторство
О чём код?
from rest_framework import serializers from ..models import TransportRing VlansType = serializers.ListSerializer[serializers.IntegerField] class TransportRingSerializer(serializers.ModelSerializer): vlans: VlansType = serializers.ListSerializer(child=serializers.IntegerField()) class Meta: model = TransportRing fields = ["name", "description", "vlans"] class AccessRingSerializer(serializers.Serializer): head_name = serializers.CharField() ports = serializers.CharField() description = serializers.CharField() is_normal_rotate_status = serializers.BooleanField() class PointInterfacesSerializer(serializers.Serializer): name = serializers.CharField() status = serializers.CharField() description = serializers.CharField(source="desc") vlans: VlansType = serializers.ListSerializer(source="vlan", child=serializers.IntegerField()) class PointRingSerializer(serializers.Serializer): name = serializers.CharField(source="device.name") ip = serializers.CharField(source="device.ip") available = serializers.BooleanField(source="ping") port_to_prev_dev = PointInterfacesSerializer() port_to_next_dev = PointInterfacesSerializer()