我指的是youtube video,了解如何使用ImageField上传图片。他解释了如何在保存图像时使用instance.id
。我试过了,但instance.id
正在返回None
。而对他来说,它的工作完美。以下是代码:Django - 在上传图片时使用instance.id
#models.py
import os
def get_image_path(instance, filename):
return os.path.join(str(instance.id), filename)
class AdProfile(models.Model):
name = models.CharField(max_length=100)
profile_image = models.ImageField(upload_to=get_image_path, blank=True, null=True)
无论何时保存文件,其保存为None/filename
。
即使是这样,link也通知相同。我正在使用Django 10.5
和MySQL
数据库。
可能是什么问题。请帮助。
告诉你如何上传文件,当'保存()覆盖的Django模型'叫什么名字? –
我使用管理面板上传了文件。它可以写任何额外的'save()'方法。 – Jeril
是的,这是你需要告诉管理员'save()'使用'get_image_path'的问题现在我正在写答案.. –