J'ai des modèles Django qui sont des listes d'éléments et je souhaite que les éléments de chaque liste aient un ordre de tri séparé. Peut-être que la liste 1 triera les éléments de ligne par nom, la liste 2 par date et la liste 3 par priorité.Spécification de l'ordre de tri du modèle associé à Django
Les modèles ressemble plus ou moins comme ceci:
class ListItem(models.Model):
priority = models.IntegerField(choices=PRIORITY_CHOICES)
name = models.CharField(max_length=240)
due_date = models.DateTimeField(null=True, blank=True)
list = models.ForeignKey(List)
En ce moment je suis en utilisant cette requête à mon avis:
lists = List.objects.filter(user=request.user)
return render_to_response('showlists.html', {'lists': lists })
J'ai lu des exemples qui impliquent que je pouvais faire quelque chose comme ceci:
lists = List.objects.filter(user=request.user).select_related().order_by("items.name")
En supposant que cela fonctionne, il me donnerait la collection de listes avec un identique ordre de tri pour chaque lot d'articles. Comment procéder pour trier différemment les éléments associés à chaque liste?
Merci. Existe-t-il un moyen facile de le faire différemment pour chaque liste ou devrais-je les séparer et gérer le tri un par un? –