В моем файле models.py моего django я наследую от двух классов: models.Model и класс, называемый Isbn10, из импортированного Python-модуля pyisbn. Однако, если я пытаюсь создать экземпляр класса, я получаю TypeError: __init __() принимает ровно 2 аргумента (1 задано)Проблемы с конструктором с множественным наследованием моделей django
Я попытался изменить порядок родительского класса, но это не помогло.
Модель:
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)
Вы хотите сказать, что мне нужен Isbn (self, '9780887276309'), чтобы создать новый экземпляр? Это не работает. Обратите внимание, что класс Isbn определен в pyisbn, который является сторонним модулем python, не относящимся к django. – geeljire