2009-08-24 58 views
7

我有一個簡單的模型,像這樣的:如何按字母順序排列多對多django-admin框中的值?

class Artist(models.Model): 
    surname = models.CharField(max_length=200) 
    name = models.CharField(max_length=200, blank=True) 
    slug = models.SlugField(unique=True) 
    photo = models.ImageField(upload_to='artists', blank=True) 
    bio = models.TextField(blank=True) 

class Images(models.Model): 
    title = models.CharField(max_length=200) 
    artist = models.ManyToManyField(Artist) 
    img = models.ImageField(upload_to='images') 

好了,我開始插入一些藝術家,然後我去了圖像插入形式。我發現,許多到許多藝術家框未排序:

  • 蒙迪諾阿爾
  • Aliprandi貝爾納
  • 羅特拉米莫
  • 語料庫安東尼

相反的:

  • Aliprandi Bernardo
  • 語料庫安東尼
  • 蒙迪諾阿爾
  • 羅特拉米莫

我怎樣才能解決這個問題呢? 有什麼建議嗎? 預先感謝您。

利瑪竇

回答

7

在文章的內部Meta類設置ordering

class Article(models.Model): 
    .... 

    class Meta: 
     ordering = ['surname', 'name'] 
+0

不要!這對於整個應用程序具有性能影響(請參閱鏈接的django文檔中的警告)。我會建議在這裏使用Daniel的更好的答案:http://stackoverflow.com/a/1474175/758345 – Chronial 2016-02-08 09:58:04