J'ai un modèle simple avec des nouvelles et des catégories:Comment compter et afficher des objets en relation avec ManyToMany dans Django
class Category(models.Model):
name = models.CharField()
slug = models.SlugField()
class News(models.Model):
category = models.ManyToManyField(Category)
title = models.CharField()
slug = models.SlugField()
text = models.TextField()
date = models.DateTimeField()
Je veux compter nouvelles pour chaque catégorie et l'afficher sur le site, comme celui-ci:
Sport (5)
School (4)
Films (6)
Computer (2)
etc...
Comment est-ce que je peux faire ceci?
Merci!
J'ai essayé, mais je m'y suis AttributeError: objet 'Manager' n'a pas d'attribut ' annoter ' – Matthew
Ok cela fonctionne, mais je veux compter les nouvelles dans la catégorie, pas les catégories dans les nouvelles ... – Matthew
Category.objects.all(). annotate (num_news = Count (' news_set ')) –