构造函数问题与django模型的多重继承

时间:2013-04-10 21:52:22

标签: django django-models

在我的django应用程序的models.py中,我继承了两个类:models.Model和一个名为Isbn10的类,来自导入的Python模块pyisbn。但是,如果我尝试创建类的实例,我会得到一个TypeError:__ init __()只需要2个参数(给定1个)

我已尝试撤消父类订单,但没有帮助。

型号:

from django.db import models
import pyisbn

class Book10(pyisbn.Isbn10, models.Model):
    pass

Isbn类定义(在pyisbn模块中定义):

class Isbn(object):
     def __init__(self, isbn):
        super(Isbn, self).__init__()
        self._isbn = isbn
        if len(isbn) in (9, 12):
            self.isbn = _isbn_cleanse(isbn, False)
        else:
            self.isbn = _isbn_cleanse(isbn)

1 个答案:

答案 0 :(得分:2)

您的 init ()定义需要self和Isbn。所以你必须通过这两个。此外,自我应该永远是第一个参数。