Tallying records using annotate() not working as should.
Posted
by 47
on Stack Overflow
See other posts from Stack Overflow
or by 47
Published on 2010-04-30T10:35:08Z
Indexed on
2010/04/30
10:37 UTC
Read the original article
Hit count: 172
django
|annotations
I have two classes: Vehicle
and Issues
....a Vehicle
object can have several issues recorded in the Issues
class. What I want to do is to have a list of all issues, with each vehicle appearing only once and the total number of issues shown, plus other details....clicking on the record will then take the user to another page with all those issues for a selected vehicle shown in detail now.
I tried this out using annotate
, but I could only access the count and vehicle foreign key, but none of the other fields in the Vehicle
class.
class Issues(models.Model):
vehicle = models.ForeignKey(Vehicle)
description = models.CharField('Issue Description', max_length=30,)
type = models.CharField(max_length=10, default='Other')
status = models.CharField(max_length=12, default='Pending')
priority = models.IntegerField(default='8', editable=False)
date_time_added = models.DateTimeField(default=datetime.today, editable=False)
last_updated = models.DateTimeField(default=datetime.today, editable=False)
def __unicode__(self):
return self.description
The code I was using to annotate is:
issues = Issues.objects.all().values('vehicle').annotate(count=Count('id'))
What could be the problem?
© Stack Overflow or respective owner