Django найти среднее количество последователей
У меня есть модель:
class User(models.Model):
followers = models.ManyToMany('users.User', related_name='following')
# Other non important fields...
Из этого я хочу найти ОБОИХ:
- the average number of followers a user has
- the average number of users a user is following
Я пробовал следующее:
User.objects.aggregate(Avg('followers'))['followers__avg']
User.objects.aggregate(Avg('following'))['following__avg']
Но они не подтягивают правильные данные. Например, для (1) у меня есть 3 пользователя, один из них следует за двумя другими, а один из двух других следует за первым. Мой код выше выдает 1.3333, что неверно, должно быть 1, так как у каждого из них 3 подписчика (даже если первый пользователь следует за 2 пользователями, он должен считаться как 2 подписчика)
Дайте мне знать, если вам нужны еще примеры.
Заранее спасибо.