【发布时间】:2016-07-07 22:23:04
【问题描述】:
我需要防止重复文件保存。
在模型中执行此操作:
def save(self, *args, **kwargs):
f = self.file
digest = Document.gen_digest(f)
qs = Document.objects.filter(hash=digest).first()
if qs is not None:
self.file = qs.file
super(Document, self).save(*args, **kwargs)
我可以找到解决方案。但是当有重复的地方时,我需要发送messages。 messages 需要 request - 所以我需要在 view 中执行此操作。
但在视图中调用此示例会创建具有不同名称的文件,这是默认行为。
如果不覆盖FileStorage,如何防止保存重复并仍然伪造messages?
或者任何其他建议都会很棒!
谢谢。
【问题讨论】:
标签: django django-models django-forms django-views