Обновление булевых и целочисленных полей из представления 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)