2
我有下面的代碼刪除文件:刪除上傳的文件在Django
from django.db import models
from django import forms
import os
class Document(models.Model):
docfile = models.FileField(upload_to='documents/%Y/%m/%d')
def __unicode__(self):
return '%s' % (self.docfile.name)
def delete(self, *args, **kwargs):
os.rmdir(os.path.join(settings.MEDIA_ROOT, self.docfile.name))
super(Document,self).delete(*args,**kwargs)
它設法刪除我要求它在我的views.py的對象,但是當我重新上傳了同名的文件似乎原始文件仍然存在,因爲我會得到「output_1.txt」而不是「output.txt」。
這是我使用刪除代碼:
def delete_matrix():
documents = Document.objects.all()
documents.delete()
我這不是從數據庫中刪除該文件?任何幫助,將不勝感激。
解釋不,我沒有得到一個異常,os.remove似乎也沒有解決錯誤。 – user2569766
我們結束了相同的答案!我昨天晚上解決了這個問題,我意識到我不應該重寫刪除方法,我只是在document.delete()之後添加了os.remove(...) – user2569766