0

我的代码是这样的:

def check(request):
    if(success):
        #nothing should do
    if(fail):
        return HttpResponseRedirect("http://google.com")

def index(request):
    return check(request)
    #some other taskshere after checking login 

我在其他帖子中读到,为了HttpResponseRedirect工作,我们必须在调用时返回它,例如:

return check(request)  

当登录失败时,它可以,但是当登录成功时,方法检查没有返回任何内容,因此给出错误索引 方法没有返回HttpResponseObject 。有什么解决办法?

谢谢

4

1 回答 1

0

为此使用 auth 装饰器。

https://docs.djangoproject.com/en/dev/topics/auth/#the-login-required-decorator

如果您只是必须,有多种方法。您可以按照您的描述进行操作:

def index(request):
    auth_situation = check(request)

    if auth_situation is None:               
       # some other tasks here, render a template,
       # redirect, do something, man!
    else:
       return auth_situation
于 2012-05-01T02:48:22.733 回答