我的代码是这样的:
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)
当登录失败时,它没问题,但是当登录成功时,方法检查没有返回任何内容,因此给出索引方法没有返回HttpResponse
对象的错误。什么是解决方案?
由于
答案 0 :(得分: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