При использовании класса Model следующим образом:
class MyModel(models.Model):
def __init__(self, *args, **kwargs):
self.myfield = models.Field()
super(MyModel, self).__init__(*args, **kwargs)
Это не учитывает myfield (в форме администратора при сохранении объекта ...)
Но если язаявить так:
class MyModel(models.Model):
myfield = models.Field()
Работает просто отлично.
Почему?
Редактировать
Я думаю, у меня естьвеская причина: у меня есть абстрактный класс UploadItem, который определяет поле с именем file следующим образом: self.file = models.FileField(upload_to=upload_to)
Как вы можете видеть, в каждом дочернем классе я должен вызывать родительский метод init с соответствующей переменной upload_to (например, «videos» для модели Video).).Так что я не могу сделать это обычным способом.