I have the following model:
class Documentrevision(models.Model):
docrevid = models.AutoField(primary_key=True,
db_column='DocRevID')
documentid = models.ForeignKey(Document, db_column='DocumentID')
submitterid = models.ForeignKey('Author', db_column='SubmitterID')
documenttitle = models.CharField(max_length=765,
db_column='DocumentTitle')
publicationinfo = models.TextField(db_column='PublicationInfo',
blank=True)
versionnumber = models.IntegerField(db_column='VersionNumber')
abstract = models.TextField(db_column='Abstract', blank=True)
revisiondate = models.DateTimeField(null=True,
db_column='RevisionDate', blank=True)
timestamp = models.DateTimeField(db_column='TimeStamp')
obsolete = models.IntegerField(null=True, db_column='Obsolete',
blank=True)
keywords = models.CharField(max_length=720, db_column='Keywords',
blank=True)
note = models.TextField(db_column='Note', blank=True)
demanaged = models.IntegerField(null=True, db_column='Demanaged',
blank=True)
Now I want to retrieve all entries that match obsolete=0, then order
on revisiondate and docrevid and last get only the highest
versionnumber for each group of documentid.
I got this far:
found_entries =
Documentrevision.objects.filter(obsolete=0).order_by('-revisiondate','-
docrevid')
This gives me all versionnumbers though: I've been trying several ways
to slice, group , do for-loops and can't get it to work..
Any ideas are greatly appreciated :-)
Thanks
--
You received this message because you are subscribed to the Google Groups "Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to django-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-users?hl=en.
No comments:
Post a Comment