Подтвердить что ты не робот

Как переопределить поле родительского класса

У меня есть родительский и дочерний классы в модели Django. И я хочу заполнить поле родительского класса при инициализации дочернего класса. Или переопределите это поле в дочернем классе.

    class Parent(models.Model):
        type = models.CharField()

    class Child(Parent):
        type = models.CharField()  //Doesn't work

Также попробуйте переопределить метод init, но он тоже не работает. Как я могу это сделать?

4b9b3361

Ответ 1

В обычном наследовании класса Python допустимо, чтобы дочерний класс переопределял любой атрибут из родительского класса. В Django это не разрешено для атрибутов, которые являются экземплярами Field (по крайней мере, на данный момент). Если базовый класс имеет поле, называемое автором, вы не можете создать другое поле модели, называемое автором, в любом классе, который наследуется от этого базового класса.

Вы не можете. Ссылка