как мне получить все экземпляры моих объектов в виде int

#python-3.x #django #django-models #django-views #django-forms

Вопрос:

я создаю приложение для выполнения задач и хочу рассчитать процент выполненных действий на основе общего набора действий

мой views.py

 def progress(request):  todo1 = int(ToDo.objects.all().count())  complete1 = int(ToDo.objects.filter(completed=True))  todo = int(todo1)  complete = int(complete1)  percent = complete // todo * 100  context = {  'percent' : percent,  }  return render(request, 'percent.html', context)  

но я получаю ошибку типа: аргумент int() должен быть строкой, байтоподобным объектом или числом, а не набором запросов

мне действительно нужна помощь

Ответ №1:

Вы забыли посчитать количество completed=True ToDo s:

 def progress(request):  todo = ToDo.objects.count()  complete = ToDo.objects.filter(completed=True).count() # ← count the number of elements  percent = complete * 100 // todo  context = {  'percent' : percent,  }  return render(request, 'percent.html', context)