我正在使用 Django,它允许人们使用 class Meta
向类添加额外的参数。
class FooModel(models.Model):
...
class Meta:
...
我在 Python 的文档中找到的唯一内容是:
class FooMetaClass(type):
...
class FooClass:
__metaclass__ = FooMetaClass
但是,我认为这不是一回事。
最佳答案
你问的是两个不同的问题:
Meta
Django 模型中的内部类:
这只是一个类容器,带有一些附加到模型的选项(元数据)。它定义了诸如可用权限、关联数据库表名、模型是否抽象、名称的单复数版本等内容。
这里有简短的解释:Django docs: Models: Meta options
可用元选项列表在这里:Django docs: Model Meta options
对于最新版本的 Django:Django docs: Model Meta options
Python 中的元类:
最好的描述在这里:What are metaclasses in Python?
https://stackoverflow.com/questions/10344197/