Почему при установлении атрибутов width и height в поле модели ImageField выдается ошибка?

В модели указываю следующее поле:

image = models.ImageField(upload_to='photos', height_field=60, width_field=60, max_length=100)


при попытке создания обьекта в админке, получаю следующую ошибку:

TypeError at /admin/gallery/photo/
getattr(): attribute name must be string
  • Вопрос задан
  • 663 просмотра
Решения вопроса 1
@marazmiki
Укротитель питонов
Потому что эти артибуты не задают ширину и высоту рисунка. Они задают названия полей, в которые джанга запишет актуальную ширину и высоту загруженной картинки. Типа того:
class MyModel(models.Model):
    img_width = models.PositiveIntegerField(null=True)
    img_height = models.PositiveIntegerField(null=True)
    image = models.ImageField(upload_to='photos', height_field='img_height', width_field='img_width', max_length=100)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
JawsIk
@JawsIk
Python Django, Lua, ЧПУ-станки(ArtCam, Aspire)
А зачем оно тогда вообще нужно?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы