from rest_framework import serializers from .models import * from apps.system.serializers import OrganizationSerializer class ContentSerializer(serializers.ModelSerializer): type_ = serializers.SerializerMethodField() class Meta: model = Content fields = '__all__' @staticmethod def setup_eager_loading(queryset): """ Perform necessary eager loading of data. """ queryset = queryset.select_related('type') return queryset def get_type_ (self, obj): data = obj.type.name if obj.type.pid: data = obj.type.pid.name + '/' + data return data class TaskCreateUpdateSerializer(serializers.ModelSerializer): class Meta: model = Task fields = ['name', 'end_date', 'note'] class TaskListSerializer(serializers.ModelSerializer): class Meta: model = Task fields = ['name', 'is_self', 'end_date', 'note', 'complete_rate']