2010-01-27 40 views
7

有人可以解釋爲什麼元類在下面的例子中使用。在django中使用元類

例:

Class Employee (models.Model): 
    name = models.ForeignKey(name) 
    Gender = models.IntegerField() 


    class Meta: 
     ordering = ["Gender"] 

感謝。

回答

3

因爲作者/程序員希望按性別字段的值排序結果排序查詢到這個模型。

25

Django模型使用Meta類包含有關模型,不一定是合適的模型類本身包含額外的信息。請注意,這是而不是與Python的metaclass相同;這是一個完全不同的話題。

在這種情況下,訂購或由場「性別」

3

在這種情況下,如果您在查詢中未提供ORDER_BY,它將定義缺省字段。

0

它在Django文檔解釋了模型

https://docs.djangoproject.com/en/dev/topics/db/models/ 

通過使用一個內部類元,喜歡給你的模型元數據:

Class Employee (models.Model): 
    .... 

    class Meta: 
     ordering = ["attribute-X"] 

另一個有用的選項可以在課堂元使用是verbose_name 。