我想存储上传的“原始”文件名。这是因为文件以 uuid 作为新名称存储。所以我为我的模型写了这个:
def save(self, *args, **kwargs):
if self.file:
self.original_filename = self.file.name
super(MediaFile, self).save(*args,**kwargs)
但是,当没有上传任何新内容时,它也会将文件名存储到 self.original_filename。因此 original_filename 在我第二次保存此模型时成为 uuid(例如更新管理员中的某些其他字段)。
如果 FileField 确实已更新并且文件已上传,如何检查保存功能?如果可能的话,我想在模型中执行此检查,以便 mit 对管理和自定义上传页面都有效。