Warum sortieren wir das in der Vorlage? Bestellen Sie in der Ansicht, bevor Sie sie übergeben - versuchen Sie in der Regel, die Geschäftslogik aus den Vorlagen herauszuhalten, wo dies möglich ist, und dies klingt sehr nach Geschäftslogik.
Als Beispiel eines meiner Modelle:
class Event(models.Model):
date = models.DateField()
location_title = models.TextField()
location_code = models.TextField(blank=True, null=True)
picture_url = models.URLField(blank=True, null=True, max_length=250)
event_url = models.SlugField(unique=True, max_length=250)
def __str__(self):
return self.event_url + " " + str(self.date)
def save(self, *args, **kwargs):
self.event_url = slugify(self.location_title+str(self.date))
super(Event, self).save(*args, **kwargs)
die Ausgabe von __str__
hier gegeben wird, immer die event_url sein + einige andere Sachen (wie bei Ihnen sein wird, vermutlich), ich etwas verwenden könnte entlang der Linien von:
stuff_in_order = Event.objects.filter(#yourqueryhere).order_by('event_url').order_by('date')
Dies hat die gleiche Wirkung wie munging die str Methode in Ihrer Vorlage Ihre Chassis' zu bestellen. (sp?)
Wenn Sie wirklich in der Vorlage neu ordnen müssen, dann könnten Sie regroup verwenden.
{% regroup chassis by dealer as dealer_list %}