From d1d0825d2e4ad96bc001dfcea5d83e70b30f9331 Mon Sep 17 00:00:00 2001 From: Alejandro Alonso Date: Wed, 18 Feb 2015 11:44:01 +0100 Subject: [PATCH] US #55: Custom fields - Adding info about custom fields to project serializer --- taiga/projects/serializers.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/taiga/projects/serializers.py b/taiga/projects/serializers.py index ad0e99a7..ade6566f 100644 --- a/taiga/projects/serializers.py +++ b/taiga/projects/serializers.py @@ -35,7 +35,9 @@ from taiga.permissions.service import is_project_owner from . import models from . import services from . validators import ProjectExistsValidator - +from . custom_attributes.serializers import(UserStoryCustomAttributeSerializer, + TaskCustomAttributeSerializer, + IssueCustomAttributeSerializer) ###################################################### ## Custom values for selectors @@ -262,6 +264,9 @@ class ProjectSerializer(ModelSerializer): tags_colors = TagsColorsField(required=False) users = serializers.SerializerMethodField("get_users") total_closed_milestones = serializers.SerializerMethodField("get_total_closed_milestones") + userstory_custom_attributes = serializers.SerializerMethodField("get_userstory_custom_attributes") + task_custom_attributes = serializers.SerializerMethodField("get_task_custom_attributes") + issue_custom_attributes = serializers.SerializerMethodField("get_issue_custom_attributes") class Meta: model = models.Project @@ -298,6 +303,14 @@ class ProjectSerializer(ModelSerializer): raise serializers.ValidationError("Total milestones must be major or equal to zero") return attrs + def get_userstory_custom_attributes(self, obj): + return UserStoryCustomAttributeSerializer(obj.userstorycustomattributes.all(), many=True).data + + def get_task_custom_attributes(self, obj): + return TaskCustomAttributeSerializer(obj.taskcustomattributes.all(), many=True).data + + def get_issue_custom_attributes(self, obj): + return IssueCustomAttributeSerializer(obj.issuecustomattributes.all(), many=True).data class ProjectDetailSerializer(ProjectSerializer): roles = serializers.SerializerMethodField("get_roles")