Django模型的子类无法从超类访问

时间:2015-06-11 21:40:02

标签: python django inheritance model

我试图在Django中创建一个继承的模型,如下所示。我应该能够调用,对于一个实例superclass = Superclass(),我应该能够调用superclass.subclass,并访问必需的字段。当我这样做的时候,我告诉他们有#1个论点是预期的,并且给出了8个问题':我知道我哪里出错了?

class Superclass(models.Model):
        pass

class Subclass(Superclass):
        def __init__(self):
                super(Subclass, self).__init__()

1 个答案:

答案 0 :(得分:2)

这里的问题是你需要在子类构造函数和超类构造函数中使用*args**kwargs。这两个字段将接受参数和对象:这些字段包括超类的字段信息,以及对象管理器等。这应该可以解决问题:

class Subclass(Superclass):
    def __init__(self, *args, **kwargs):
            super(Subclass, self).__init__(*args, **kwargs)