2009-02-21 5 views
1

Je le code suivant dans un de mes modèles Django que je veux factoriser:modèles Django - Regroupement par un paramètre de chaîne

{% ifequal sort_type "set" %} 
    {% regroup cards by set as grouped %} 
{% endifequal %} 
{% ifequal sort_type "rarity" %} 
    {% regroup cards by rarity as grouped %} 
{% endifequal %} 

Il fonctionne, mais il est vraiment moche et je veux le rendre plus comme ceci:

{% regroup cards by sort_type as groupedcards %} 

Mais cela ne fonctionne pas (. il les met tout le tout dans un seul groupe appelé Aucun) de la documentation, je pense qu'il pourrait essayer une recherche dans le dictionnaire (c.-à-carte d'appel [ » set "] au lieu de card.set).

Existe-t-il un bon moyen de le faire dans le modèle, ou devrais-je déplacer le regroupement dans le code Python en utilisant itertools?

Répondre

3

Ticked in Django bugtracker liés à ce problème.

+0

L'utilisation similaire n'est pas la même, car ils connaissent la propriété de se regrouper par avance (je ne l'obtiens qu'à l'exécution). Mais le ticket est utile, et semble indiquer qu'il n'est pas possible de le faire. – Kiv

Questions connexes