Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django中元类的使用_Python_Django_Django Models - Fatal编程技术网

Python django中元类的使用

Python django中元类的使用,python,django,django-models,Python,Django,Django Models,有人能解释一下为什么在下面的例子中使用了元类吗 例: 谢谢。Django模型使用Meta类来包含关于模型的额外信息,这些信息不一定适合包含在模型类本身中。请注意,这与Python的元类不同;这是一个完全不同的话题 在这种情况下,它将按字段“性别”对该模型的查询进行排序或排序,因为作者/程序员希望按性别字段的值对结果进行排序。在这种情况下,如果您在查询中未提供ORDER\u by,它将定义用于排序的默认字段。在Django模型文档中对此进行了解释 https://docs.djangoprojec

有人能解释一下为什么在下面的例子中使用了元类吗

例:


谢谢。

Django模型使用
Meta
类来包含关于模型的额外信息,这些信息不一定适合包含在模型类本身中。请注意,这与Python的
元类不同;这是一个完全不同的话题


在这种情况下,它将按字段“性别”对该模型的查询进行排序或排序,因为作者/程序员希望按性别字段的值对结果进行排序。

在这种情况下,如果您在查询中未提供
ORDER\u by
,它将定义用于排序的默认字段。

在Django模型文档中对此进行了解释

https://docs.djangoproject.com/en/dev/topics/db/models/
使用内部类Meta提供模型元数据,如:

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

    class Meta:
        ordering = ["attribute-X"]
在Meta类中可以使用的另一个有用的选项是verbose_name

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

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