diff --git a/taiga/projects/issues/api.py b/taiga/projects/issues/api.py index 34cba0d2..2150943f 100644 --- a/taiga/projects/issues/api.py +++ b/taiga/projects/issues/api.py @@ -87,6 +87,7 @@ class IssuesOrdering(filters.FilterBackend): class IssueViewSet(NeighborsApiMixin, NotificationSenderMixin, ModelCrudViewSet): model = models.Issue + queryset = models.Issue.objects.all().prefetch_related("attachments") serializer_class = serializers.IssueNeighborsSerializer list_serializer_class = serializers.IssueSerializer permission_classes = (IsAuthenticated, permissions.IssuePermission) diff --git a/taiga/projects/issues/serializers.py b/taiga/projects/issues/serializers.py index 07aa01ed..8e42bce2 100644 --- a/taiga/projects/issues/serializers.py +++ b/taiga/projects/issues/serializers.py @@ -3,13 +3,20 @@ from rest_framework import serializers from taiga.base.serializers import PickleField, NeighborsSerializerMixin +from taiga.projects.serializers import AttachmentSerializer from . import models +class IssueAttachmentSerializer(AttachmentSerializer): + class Meta(AttachmentSerializer.Meta): + fields = ("id", "name", "size", "url", "owner", "created_date", "modified_date", ) + + class IssueSerializer(serializers.ModelSerializer): tags = PickleField(required=False) is_closed = serializers.Field(source="is_closed") + attachments = IssueAttachmentSerializer(many=True, read_only=True) class Meta: model = models.Issue