From c7885ab8613a8a0c3ff817d66f322d32f6691645 Mon Sep 17 00:00:00 2001 From: CKW Date: Sat, 16 May 2015 21:36:07 -0700 Subject: [PATCH] hide flashcard and added return response for unhide --- flashcards/views.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/flashcards/views.py b/flashcards/views.py index 9605401..a6bfd5b 100644 --- a/flashcards/views.py +++ b/flashcards/views.py @@ -298,6 +298,24 @@ class FlashcardViewSet(GenericViewSet, UpdateModelMixin, CreateModelMixin, Retri return Response(serializer.data, status=HTTP_201_CREATED, headers=headers) @detail_route(methods=['post']) + def hide(self, request, pk): + """ + Hide a flashcard + --- + omit_serializer: true + parameters: + - fake: None + parameters_strategy: + form: replace + """ + obj, created = FlashcardHide.objects.get_or_create(user=request.user, flashcard=self.get_object()) + if not created: + raise ValidationError("The card has already been hidden.") + + obj.save() + return Response(status=HTTP_204_NO_CONTENT) + + @detail_route(methods=['post']) def unhide(self, request, pk): """ Report the given card @@ -310,6 +328,7 @@ class FlashcardViewSet(GenericViewSet, UpdateModelMixin, CreateModelMixin, Retri """ hide = get_object_or_404(FlashcardHide ,user=request.user, flashcard=self.get_object()) hide.delete() + return Response(status=HTTP_204_NO_CONTENT) @detail_route(methods=['post']) def report(self, request, pk): -- 1.9.1