Skip to content Skip to sidebar Skip to footer

How To Count And Display Objects In Relation Manytomany In Django

I have a simple model with news and categories: class Category(models.Model): name = models.CharField() slug = models.SlugField() class News(models.Model): category =

Solution 1:

Check out annotate() function from Django 1.1.

http://docs.djangoproject.com/en/dev/topics/db/aggregation/#topics-db-aggregation

Example (from that URL above):

>>> q = Book.objects.annotate(num_authors=Count('authors'))
>>> q[0].num_authors
2
>>> q[1].num_authors
1

Solution 2:

Very simple:

>>>for category in Category.objects.all():...print category.name, category.news_set.count()

Post a Comment for "How To Count And Display Objects In Relation Manytomany In Django"