From b94c058598f5eb2249826197f818d3c60500b554 Mon Sep 17 00:00:00 2001 From: yann Date: Fri, 30 May 2025 11:16:03 +0200 Subject: [PATCH] querystring validation ok --- softdesk/support/serializers.py | 3 ++- softdesk/support/views.py | 11 +++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/softdesk/support/serializers.py b/softdesk/support/serializers.py index 596da25..1560f15 100644 --- a/softdesk/support/serializers.py +++ b/softdesk/support/serializers.py @@ -86,9 +86,10 @@ class IssueSerializer(ModelSerializer): class CommentListSerializer(ModelSerializer): + issue = IssueSerializer(many=False) class Meta: model = Comment - fields = ['title', 'date_created', 'author'] + fields = ['title', 'date_created', 'author', 'issue'] class CommentDetailSerializer(ModelSerializer): diff --git a/softdesk/support/views.py b/softdesk/support/views.py index 3d8891c..8955e40 100644 --- a/softdesk/support/views.py +++ b/softdesk/support/views.py @@ -15,6 +15,7 @@ from rest_framework.permissions import (IsAuthenticated, IsAuthenticatedOrReadOnly) from support.permissions import IsAuthor, IsContributor from rest_framework.decorators import action +from rest_framework.exceptions import ValidationError class ProjectViewSet(ModelViewSet): @@ -65,10 +66,12 @@ class IssueViewSet(ModelViewSet): def get_queryset(self): - project_id = int(self.request.GET.get('project')) - project = Project.objects.get(id=project_id) - self.check_object_permissions(self.request, project) - return Issue.objects.filter(project=project_id) + #check for the right query string or return nothing + if self.request.GET.get('project'): + project_id = int(self.request.GET.get('project')) + project = Project.objects.get(id=project_id) + self.check_object_permissions(self.request, project) + return Issue.objects.filter(project=project_id) def get_contributors(self, project):