from rest_framework import serializers from ..models import Organization class OrganizationSerializer(serializers.ModelSerializer): """ 组织架构序列化 """ type = serializers.ChoiceField(choices=Organization.organization_type_choices, default='company') create_time = serializers.DateTimeField(format="%Y-%m-%d %H:%M:%S", required=False, read_only=True) class Meta: model = Organization fields = '__all__' class UserSerializer(serializers.Serializer): id = serializers.IntegerField() label = serializers.CharField(max_length=20, source='name') class OrganizationUserTreeSerializer(serializers.ModelSerializer): """ 组织架构树序列化 """ label = serializers.StringRelatedField(source='name') children = UserSerializer(many=True, read_only=True, source='userprofile_set') class Meta: model = Organization fields = ('id', 'label', 'pid', 'children')