2009-12-02 2 views
3

Je garde des champs numériques comme "taille", "largeur", "hauteur" dans ma base de données. Maintenant, je voudrais joindre des unités comme "KiB" ou "pixels" pour les montrer dans la liste de changement. Ceci pourrait facilement être réalisé en ajoutant des paramètres appelables tels que "size_formatted" etc à list_display. Cependant, ceux-ci ne sont plus triables.Django admin: Formatez les champs dans la liste, mais gardez le triable?

Y a-t-il un moyen de contourner cette limitation?

Répondre

8

Lire ici - ModelAdmin.list_display (lire beaucoup pour arriver au point;))

vous devez ajouter admin_order_field attribut à votre fonction

class YourAdminCLass(admin.ModelAdmin) 
    [...] 
    def size_formatted(self, obj): 
      return "whatever you need" 
    size_formatted.admin_order_field = 'size' 
+0

Hourra, un cadeau de Noël! Merci pour cela. – Sam

Questions connexes