From 057d2cc3f7f9516ed0eaba1357efa60d5a1f068d Mon Sep 17 00:00:00 2001 From: Rohan Rangray Date: Mon, 25 May 2015 14:05:11 -0700 Subject: [PATCH] Attempted fix for MaskSerializer. --- flashcards/serializers.py | 2 +- flashcards/views.py | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/flashcards/serializers.py b/flashcards/serializers.py index e36527e..9968fa7 100644 --- a/flashcards/serializers.py +++ b/flashcards/serializers.py @@ -99,7 +99,7 @@ class MaskFieldSerializer(serializers.Field): } def to_representation(self, value): - return dumps(list(self._make_mask(value))) + return map(list, self._make_mask(value)) def to_internal_value(self, value): if not isinstance(value, list): diff --git a/flashcards/views.py b/flashcards/views.py index fb1194a..816f163 100644 --- a/flashcards/views.py +++ b/flashcards/views.py @@ -18,10 +18,12 @@ from rest_framework.viewsets import ReadOnlyModelViewSet, GenericViewSet from django.core.mail import send_mail from django.contrib.auth import authenticate from django.contrib.auth.tokens import default_token_generator +from django.db.models import Count, F from rest_framework.status import HTTP_204_NO_CONTENT, HTTP_201_CREATED, HTTP_200_OK from rest_framework.response import Response from rest_framework.exceptions import AuthenticationFailed, NotAuthenticated, ValidationError, PermissionDenied from simple_email_confirmation import EmailAddress +from math import e class SectionViewSet(ReadOnlyModelViewSet): @@ -374,7 +376,16 @@ class UserFlashcardQuizViewSet(GenericViewSet, CreateModelMixin, UpdateModelMixi raise ValidationError("No matching flashcard found in your decks") user_flashcard = user_flashcard_filter.order_by('?').first() - # user_flashcard = user_flashcard_filter.annotate(spaced=F()) + """ + user_flashcard_pks = user_flashcard_filter.values('pk') + quiz_filter = UserFlashcardQuiz.filter( + user_flashcard__in=user_flashcard_pks + ).annotate( + revise_count=Count('user_flashcard') + ).annotate( + + ) + """ mask = user_flashcard.get_mask().get_random_blank() user_flashcard_quiz = UserFlashcardQuiz(user_flashcard=user_flashcard, blanked_word=user_flashcard.flashcard.text[slice(*mask)]) -- 1.9.1