"message": "ожидаемая строка или байтовый объект", - PullRequest
0 голосов
/ 21 июня 2020

Я хочу, чтобы общее время, затраченное на сеанс, было завершено, но я получаю указанную выше ошибку: что мне нужно изменить?

# МОДЕЛЬ

class User(models.Model):
    user = models.CharField(max_length=40)


class Sport(models.Model):
    Sports_Name = models.CharField(max_length=30, null=True, blank=True)


class Session(models.Model):
    Host = models.ForeignKey(MyUser, on_delete=models.CASCADE, related_name='host')
    sports = models.ForeignKey(Sport, on_delete=models.CASCADE)
    Start_time = models.TimeField(auto_now=False, auto_now_add=False, null=True)
    End_time = models.TimeField(auto_now=False, auto_now_add=False, null=True)


class Gamification(models.Model):
    User_Name = models.ForeignKey(MyUser, on_delete=models.CASCADE)

# вид

users = Gamification.objects.all()

b = []
for user in users:
    b.append({
        "User_Name": user.User_Name.user_name,
        'Session_Created': Session.objects.filter(Host=user.User_Name).count(),
        "Session_Joined": Session.objects.filter(Players_Participating=user.User_Name).count(),

        "Completion_Time(in days)": Session.objects.filter(End_time=user.User_Name),

    })

return Response({'success': b})

1 Ответ

0 голосов
/ 21 июня 2020

Вы должны использовать JsonResponse вместо Response. Если вы хотите отправить массив вместо JSON, сделайте следующее:

return JsonResponse(b, safe=False)
...