Django管理网站未选择当前图像网址

时间:2019-09-18 16:06:19

标签: python django heroku django-models cloudinary

我正在尝试在Django管理站点中编辑我的一个对象的字段,我的模型中也有一个Cloudinary图像字段。问题是,每当我尝试对对象的CharField之一进行编辑时,都会收到错误消息:

value too long for type character varying(100)

后来我发现,每次我完成编辑并尝试保存时,它都会寻找一个新图像来替换imagefile的当前图像,即使我没有触摸{{1 }},因此它返回一个空的图像URL字符串,如下所示:

enter image description here

但是当前图像URL可以正常工作,并在单击时显示,如下所示:

enter image description here

我只想知道我做错了什么,为什么每次单击保存时它都会寻找一个新的图像URL?

这是我的imagefile文件:

models.py

这是我先前的问题的后续问题,可以在这里找到:

value too long for type character varying(100)

1 个答案:

答案 0 :(得分:2)

Django在保存对象时会保存所有属性,而不仅仅是保存您已更改的属性。

Cloudinary库hard-codes max_length to 255,所以

  • 您的max_length=512不执行任何操作,并且
  • 您应该不会在该字段上看到关于VARCHAR(100)的错误。

您确定所有迁移都已在Heroku上应用吗?尝试运行

heroku run python manage.py migrate