Обновление булевых и целочисленных полей из представления Django

Может ли кто-нибудь указать мне правильное направление. У меня есть приложение викторины, где я хочу реализовать некоторые объекты пользовательского прогресса. У меня есть модель QuizResult, которая привязывается к пользователю, тесту и уроку. Я хочу иметь возможность обновлять пару полей: score (целочисленное поле) и complete (булево поле) из моей функции views.py. Когда я пытаюсь обновить эти поля из фронтенда, я не получаю ошибок, но объект показывает поля complete и score как null.

Вот моя модель:

class QuizResult(models.Model):
    student = models.ForeignKey(User, related_name="results", on_delete=models.CASCADE)
    quiz = models.ForeignKey(Quiz, related_name="results", on_delete=models.CASCADE)
    lesson = models.ForeignKey(Lesson, null=True, blank=True, related_name="results", on_delete=models.CASCADE)
    score = models.IntegerField(blank=True, null=True)
    complete = models.BooleanField(default=False)

и моя функция view.py:

@api_view(['POST'])
def post_progress(request, pk):
    data = request.data
    score = data.get('score')
    complete = data.get('complete') 

    quiz = Quiz.objects.get(pk=pk)

    user_progress = QuizResult.objects.create(quiz=quiz, score=score, complete=complete, student=request.user)

    serializer = QuizResultSerializer(user_progress, data=data)

    return Response(serializer.data)
Вернуться на верх