Python 模型中的元类应该从对象继承吗

Python 模型中的元类应该从对象继承吗,python,django,Python,Django,写这样的模型似乎很传统: from django.db import models class Foo(models.Model): name = models.CharField(max_length=100, null=False) class Meta: ordering = ("name") 是否有任何原因使用类元:,而不是类元(对象):?是否有任何理由不从对象显式继承 从对象继承应该没有什么区别。模式: class Foo(): cl

写这样的模型似乎很传统:

from django.db import models

class Foo(models.Model):
     name = models.CharField(max_length=100, null=False)

     class Meta:
         ordering = ("name")

是否有任何原因使用
类元:
,而不是
类元(对象):
?是否有任何理由不从
对象
显式继承

对象继承
应该没有什么区别。模式:

class Foo():
    class Meta:
       attribute = 'This is Interesting'
主要是为了便于以后编写以下代码:

if Foo.Meta.attribute == 'How Boring':
    ....

在此模式中,唯一的功能是访问
Meta
的类属性,因此
Meta
的任何其他功能可能都无关紧要。

以及Stephen的答案,请注意,从2.0版开始,Django只支持Python 3;在该版本的Python中,不需要从object继承,所有类都自动成为“新样式”。

事实上,虽然您的观点是正确的,但这个例子并不是很好地选择,因为django将使用
模型
子类的
Meta
类的属性来进行巫毒,因此,无法保证您的代码片段能够正常工作。