django使用@user_passes_test装饰器上传302错误

时间:2012-06-02 19:09:51

标签: django uploadify

您好我在我的django应用程序中使用了Uploadify。它工作正常。但是当我使用@user_passes_test装饰器时,uploadify会出现Http 302错误。只允许具有特定权限的登录用户使用fileupload。

我的观点如下:

@user_passes_test(lambda u: u.has_perm('cylebrations.can_multiupload'))
def myFileHandler(request):
    if request.method == 'POST':
        for field_name in request.FILES:
            image=Image(gallery_id=gallery.id, image=request.FILES[field_name])
            image.save()
            return HttpResponse("ok", mimetype="text/plain")
    return render_to_response('gallery_upload.html', context_instance=RequestContext(request))

当我在视图中使用类似跟随的内容而不是装饰器时,我也会收到302错误。

if not request.user.has_perm('cylebrations.can_multiupload'):
    return HttpResponse("You can't upload.")

看起来该视图无法获取用户信息。 有没有办法通过uploadifys postData设置传递必要的用户信息?如何将uploadify与django权限一起使用?

1 个答案:

答案 0 :(得分:0)

这是一个论坛条目,显示了如何完成: http://www.uploadify.com/forum/#/discussion/7195/uploadify-3-0-beta-with-django/p1

它包含指向another stackoverflow question的链接,也可能会有所帮助。