diff --git a/flashcards/views.py b/flashcards/views.py index 708990e..17e04ec 100644 --- a/flashcards/views.py +++ b/flashcards/views.py @@ -279,11 +279,11 @@ def reset_password(request, format=None): return Response(status=HTTP_204_NO_CONTENT) - class FlashcardViewSet(GenericViewSet, CreateModelMixin, RetrieveModelMixin): queryset = Flashcard.objects.all() serializer_class = FlashcardSerializer permission_classes = [IsAuthenticatedAndConfirmed, IsEnrolledInAssociatedSection] + # Override create in CreateModelMixin def create(self, request, *args, **kwargs): serializer = FlashcardSerializer(data=request.data) @@ -418,8 +418,13 @@ class UserFlashcardQuizViewSet(GenericViewSet, CreateModelMixin, UpdateModelMixi user_flashcard = quiz_filter.first() mask = user_flashcard.get_mask().get_random_blank() + if not mask: + blanked_word = "" + log_event(request, mask) + else: + blanked_word = user_flashcard.flashcard.text[slice(*mask)] user_flashcard_quiz = UserFlashcardQuiz(user_flashcard=user_flashcard, - blanked_word=user_flashcard.flashcard.text[slice(*mask)]) + blanked_word=blanked_word) user_flashcard_quiz.save() response = QuizResponseSerializer(instance=user_flashcard_quiz, mask=mask) log_event(request, response)