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

问题描述 投票:4回答:2

编写类似这样的模型似乎很常见:

from django.db import models

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

     class Meta:
         ordering = ("name")

是否有任何理由使用class Meta:,而不是class Meta(object):?有没有理由不明确继承object

python django
2个回答
1
投票

除了Stephen的回答,请注意,从版本2.0开始,Django只支持Python 3;在那个版本的Python中,不需要从对象继承,所有类都自动“新风格”。


1
投票

继承object应该没有区别。模式:

class Foo():
    class Meta:
       attribute = 'This is Interesting'

主要是为了使以后的代码易于编写:

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

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

© www.soinside.com 2019 - 2024. All rights reserved.