当前位置:  开发笔记 > 编程语言 > 正文

删除上传的文件时出现Django"SuspiciousOperation"错误

如何解决《删除上传的文件时出现Django"SuspiciousOperation"错误》经验,为你挑选了1个好方法。

我正在使用manage.py runserver命令提供文件在Windows XP上使用Django进行开发.Apache没有涉及.当我登录管理并尝试删除文件时,出现"SuspiciousOperation"错误.

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

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

如何摆脱这个"SuspiciousOperation"错误?

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

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

Baishampayan.. 5

MEDIA_ROOT在做settings.py什么?从后面跟踪,似乎你已经设置了你MEDIA_ROOT/static/.

自Django尝试访问/static/它无权访问以来,此错误即将发生.为MEDIA_ROOTLike添加绝对路径名,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()您所呼叫的方法delete()超类的方法,File因为super(File, self).delete()这显然是错误的,因为它会尝试删除File.nzb,并会尝试通过访问该文件MEDIA_URL.修复将摆脱错误.我会把确切的解决方案作为练习留给你:)



1> Baishampayan..:

MEDIA_ROOT在做settings.py什么?从后面跟踪,似乎你已经设置了你MEDIA_ROOT/static/.

自Django尝试访问/static/它无权访问以来,此错误即将发生.为MEDIA_ROOTLike添加绝对路径名,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()您所呼叫的方法delete()超类的方法,File因为super(File, self).delete()这显然是错误的,因为它会尝试删除File.nzb,并会尝试通过访问该文件MEDIA_URL.修复将摆脱错误.我会把确切的解决方案作为练习留给你:)

推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有