Как переопределить поле в родительском классе
У меня есть родительские и дочерние классы в модели Django. И я хочу заполнить поле в родительском классе при инициализации дочернего класса. Или переопределить это поле в дочернем классе.
class Parent(models.Model):
type = models.CharField()
class Child(Parent):
type = models.CharField() //Doesn't work
также пытается переопределить метод init, но он тоже не работает. Как я могу это сделать?
1 ответов
в обычном наследовании класса Python допустимо, чтобы дочерний класс переопределял любой атрибут из родительского класса. В Django это запрещено для атрибутов, которые являются экземплярами полей (по крайней мере, на данный момент). Если базовый класс имеет поле с именем author, нельзя создать другое поле модели с именем author в любом классе, наследуемом от этого базового класса.
вы не можете. ссылка