Django“SuspiciousOperation”错误,同时删除上传的文件

我正在使用manage.py runserver命令在Windows XP上开发Django来提供文件。 Apache不参与。 当我loginpipe理并尝试删除文件时,出现“SuspiciousOperation”错误。

这是追溯:
http://dpaste.com/123112/

这是我的完整模型:
http://dpaste.com/hold/123110/

我怎样才能摆脱这个“SuspiciousOperation”错误?

编辑:这是我的媒体设置:

 MEDIA_ROOT = 'C:/Server/Projects/postnzb/static/' MEDIA_URL = '/static/' 

settings.pyMEDIA_ROOT是什么? 从反向跟踪看来,您已将MEDIA_ROOT设置为/static/

这个错误是由于Django尝试访问/static/而无法访问的。 将MEDIA_ROOT的绝对路径名称设置为C:/Documents/static/并为Django提供访问该目录的完整权限。

这应该可以解决你的问题。

附录 :因为你的MEDIA_ROOT似乎是好的,我猜你正在使用MEDIA_URL删除文件,而不是MEDIA_ROOT 。 的确,从错误看来,Django试图访问/static/files/8.nzb并被拒绝访问。 显然, /static/是你的MEDIA_URL而不是你的MEDIA_ROOT 。 模型方法不应该尝试使用MEDIA_URL访问文件。 我相信你的代码审查将发现错误。

更新 :我浏览了你的代码,好像你正在将File.nzb设置为%(1)sfiles/%(2)s.nzb' % {'1': settings.MEDIA_URL, '2': self.pk}它的MEDIA_URL ,然后在delete()方法中调用超类Filesuper(File, self).delete()delete()方法,这显然是错误的,因为它会尝试删除File.nzb ,并将尝试通过MEDIA_URL访问文件。 修复,将摆脱错误。 我将把确切的解决方案作为一个练习给你:)