Django 视图没有';没有';t返回HttpResponse对象。它没有返回任何结果
这是我的观点Django 视图没有';没有';t返回HttpResponse对象。它没有返回任何结果,django,django-views,Django,Django Views,这是我的观点 views.py def user_login(request): if request.method == 'POST': username = request.POST['username'] password = request.POST['password'] user = authenticate(username = username , password = password) if user:
views.py
def user_login(request):
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
user = authenticate(username = username , password = password)
if user:
if user.is_active:
login(request , user)
return HttpResponseRedirect('/zdorovo/')
else:
return HttpResponse('You dont have an account with us')
else:
print "Invalid Login Details: {0} , {1}".format(username , password)
return HttpResponse('Invalid Login Details ')
else:
render(request , 'zdorovo/login.html' , {})
已正确导入身份验证、登录、HttpResponse和HttpResponseRedirect。我也注意到了缩进,所以误差不会从那一端增加。
请帮我理解错误
这是我的login.html
<body>
<h1>Login</h1>
<form id="login_id" method="post" action="/zdorovo/login/">
{% csrf_token %}
Username: <input type="text" name="username" value=""/>
<br/>
Password: <input type="password" name="password" value=""/>
<br/>
<input type="submit" value="Login" />
</form>
</body>
登录
{%csrf_令牌%}
用户名:
密码:
备注:-如果您需要我这边的其他脚本,请更新我。您的函数在执行最后一个
else
条件时不会返回任何内容。您应该添加return
语句
return render(request , 'zdorovo/login.html' , {})
在最后一个
else
条件中使用return
,现在可以使用了,谢谢。我会把它作为一个答案发布,以便对其他人有所帮助。