Получение количества пользователей, зарегистрированных за день в приложении django

Мне нужно создать простой график (используя chart.js), который должен выглядеть следующим образом: По оси Y - количество зарегистрированных пользователей, по оси X - дата. Скрин ниже:

Y axis data was generated for illustrative example

Моя модель:

class User(AbstractBaseUser, PermissionsMixin):

uid = models.CharField(max_length=36, unique=True, default=make_uid)
email = models.EmailField(max_length=255, unique=True)
name = models.CharField(max_length=255, unique=True)
is_active = models.BooleanField(default=False)
is_staff = models.BooleanField(default=False)
activation_token = models.CharField(null=True, blank=True, max_length=100)

date_joined = models.DateTimeField(default=now, editable=False)

Вид:

@staff_member_required()
@login_required()
def index(request):
  users = User.objects.all()
  context = {
      "users": users,
      "users_count": users.count
       }
  return render(request, "backoffice/backoffice_index.html", context)

Часть шаблона с графиком:

    <script>
    $(document).ready(function () {
        var ctx = document.getElementById("myChart").getContext('2d');
        var myChart = new Chart(ctx, {
            type: 'bar',
            data: {
                labels: [{% for user in users %} '{{ user.date_joined }}', {% endfor %}],
                datasets: [{
                    label: '# of users registered per day',
                    data: [],
                    backgroundColor: [
                        'rgba(255, 99, 132, 0.2)',
                        'rgba(54, 162, 235, 0.2)',
                        'rgba(255, 206, 86, 0.2)',
                        'rgba(75, 192, 192, 0.2)',
                        'rgba(153, 102, 255, 0.2)',
                        'rgba(255, 159, 64, 0.2)'
                    ],
                    borderColor: [
                        'rgba(255,99,132,1)',
                        'rgba(54, 162, 235, 1)',
                        'rgba(255, 206, 86, 1)',
                        'rgba(75, 192, 192, 1)',
                        'rgba(153, 102, 255, 1)',
                        'rgba(255, 159, 64, 1)'
                    ],
                    borderWidth: 1
                }]
            },
            options: {
                scales: {
                    yAxes: [{
                        ticks: {
                            beginAtZero: true
                        }
                    }]
                }
            }
        });
    });
</script>


<canvas id="myChart" width="400" height="100"></canvas>

Если я все правильно понимаю, то мне нужно поместить количество новых пользователей в массив под названием "data", и, очевидно, это должны быть целочисленные значения!

Как я могу это сделать? Заранее спасибо !

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