有人可以请解释为什么在下面的例子中使用的元类。

例如:

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


    class Meta:
        ordering = ["Gender"]

感谢。

有帮助吗?

解决方案

由于作者/程序员想通过性别字段的值,以对结果进行排序。

其他提示

Django模型使用Meta类包含有关模型,不一定是合适的模型类本身包含额外的信息。注意,这是的相同Python的metaclass;这是一个完全不同的主题。

在这种情况下,订购或由字段“性别”排序查询,以该模型

在这种情况下,它定义了默认字段订货,如果你不查询提供ORDER_BY

据在Django文档解释了模型

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

通过使用一个内部类元给您的模型元数据,如:

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

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

可以在类元使用的另一种有用的选项是verbose_name。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top