Как отобразить данные на Piechart из базы данных MYSQL с помощью django?

Я пытаюсь извлечь данные из базы данных и просмотреть результаты на круговой диаграмме, диаграммы должны динамически меняться при изменении значений в базе данных. Но я получаю ошибку в моем скрипте.

Вот мой view.py:

def pie_chart(request):
  labels = []
  data = []

  queryset = Persons.objects.order_by('-id')[:3]
  for city in queryset:
     labels.append(city.firstname)
     data.append(city.salary)

  return render(request, 'breedingherdsummary.html', {
     'labels': labels,
     'data': data,
 })

Model.py:

class Persons(models.Model):   
    id = models.IntegerField(primary_key=True)
    firstname = models.CharField(max_length=100)
    lastname = models.CharField(max_length=100)
    address = models.CharField(max_length=100)
    dob = models.CharField(max_length=100)
    salary = models.IntegerField
    doj = models.DateField
    class Meta:
        db_table = "test"

Вот мой сценарий:

<script>
    var config = {
      type: 'doughnut',
      data: {
        datasets: [{
          data: {{ data|safe }}  ,
          backgroundColor: [
            '#FFA07A', '#E9967A', '#FA8072', '#F08080', '#CD5C5C'
          ],
          label: 'Salary'
        }],
        labels: {{ labels|safe }}
      },
      options: {
        responsive: true,
        innerRadius: "40%"
      }
    };
 
    window.onload = function() {
      var ctx = document.getElementById('pie-chart').getContext('2d');
      window.myPie = new Chart(ctx, config);
    };
  </script>

Любая помощь будет высоко оценена.

Спасибо!

Вернуться на верх