2009-11-11 46 views
10

我已经安装了filebrowser Django的(不是filebrowser3),当,当我尝试上传的文件我收到以下错误:“CSRF验证失败”尝试上传的文件或filebrowser创建一个文件夹的Django

403 Forbidden

CSRF verification failed. Request aborted.

More information is available with DEBUG=True.

当我尝试创建一个新文件夹,显示问题是filebrowser无法在我的上传目录中创建文件/目录时发生同样的错误。我使用默认设置并手动创建了/media/uploads目录,并将其权限设置为755

如果我上传文件的目录,然后文件浏览器的管理页面状态:

1 Item Folder: 0 Image: 1

我不能查看我已经上传了图片。

我安装了PIL和sorl.thumbnail模块。

回答

6

您可能正在使用Django的开发版本,它包含相当多的额外CRSF安全性。然而它还没有发布,所以外部产品可能不兼容。您应该使用1.1版本的Django。

+0

正确!我正在努力降级到1.1。除了等待应用程序更新之外,有什么方法可以解决此问题吗?谢谢。 – 2009-11-12 00:20:33

1

在这里看到:http://docs.djangoproject.com/en/dev/ref/contrib/csrf/像fitzgeralsteele说。 拥抱。

例子: 从django.views.decorators.csrf进口csrf_exempt

@csrf_exempt 高清my_view(请求): 返回的HttpResponse(“世界,你好”)

禁用CSRF中间件。

4

添加到您的settings.py这2行:

'django.middleware.csrf.CsrfViewMiddleware', 'django.middleware.csrf.CsrfResponseMiddleware',

+0

通常,错误会告诉您需要包含第一个,但它不会告诉您包含第二个。 +1在这里列出,因为这解决了我的问题:) – g19fanatic 2012-03-31 21:04:58

0

它的工作将

{% csrf_token %} 

我的形式是这样的:

<form method="post" action=""> 
{% csrf_token %} 
{{ form.non_field_errors }} 
{{formulario}} 
<input type="submit" value="Guardar"> 
</form> 

到您的模板文件 上的标签并验证'django.middleware.csrf.CsrfViewMiddleware',在您的设置文件中,它在默认情况下为