0

我正在尝试在可空和可空白的图像字段上设置默认图像。我在媒体/类别中设置默认图像,如下所示:

在此处输入图像描述

通过在 models.py 上设置默认值,我成功地设置了默认图像并运行良好,如下所示:

class Category(models.Model):
    ...
    image = models.ImageField(upload_to=upload_location, default='category/category.png', null=True, blank=True)
    ...

    def delete(self):
        if self.image != 'category/category.png':
            self.image.delete()
        super().delete()

添加空白图像数据时,默认图像填充表格中的默认图像字段:

在此处输入图像描述

它也像这样显示:

在此处输入图像描述

当我删除自己的数据时,问题就来了,图像也被删除了。我已经尝试了这些代码来防止默认图像删除,数据仍然存在,默认图像仍然被删除并且图像字段被空白,如下所示:

在此处输入图像描述

而且我意识到这些代码(在models.py上)只防止数据删除,而不是文件/图像删除:

    ...
    def delete(self):
        if self.image != 'category/category.png':
            self.image.delete()
        super().delete()
    ...

我希望在数据被删除的情况下仍保留默认图像,因为它将在其他人添加另一个带有空白图像的数据时使用。如何防止这种默认图像删除?请帮忙?

4

0 回答 0