【发布时间】:2011-01-01 14:04:33
【问题描述】:
我注意到在 Django 模型中,有一个 class Meta 对模型进行了一些额外的定义。
我的问题是,为什么这是一个老式的类? (即不继承object?)这是有原因的还是只是一种习惯?我可以在我的项目中将它作为一个新样式的类吗?
【问题讨论】:
我注意到在 Django 模型中,有一个 class Meta 对模型进行了一些额外的定义。
我的问题是,为什么这是一个老式的类? (即不继承object?)这是有原因的还是只是一种习惯?我可以在我的项目中将它作为一个新样式的类吗?
【问题讨论】:
我相信没有真正的原因(包括历史,因为自 Python 2.2 以来就存在新样式的类)并且您不仅可以选择使用新样式的类,而且这可能是一个好主意让你这样做(出于所有通常的原因)。
【讨论】:
由于类 Meta 只不过是一个简单的命名空间容器,因此子类化对象的优势为零;只需输入八个额外的字符。不过,如果您愿意,这样做不会有任何伤害。
【讨论】: