为什么我在 Django 中有一个属性错误
why i am having an attribute error in django
我是 django 的初学者,最近从一门课程中学习它,我正在研究身份验证以及登录和注销功能,这是我的错误
这是我的 views.py 文件
def user_login(request):
if request.method == "POST":
username = request.POST.get('username')
password = request.POST.get('password')
user = authenticate(username=username, password=password)
if user:
if user.is_ative:
login(request, user)
return HttpResponseRedirect(reverse('index'))
else:
return HttpResponseRedirect("ACCOUNT NOT ACTIVE")
else:
print("Someone tried to login and failed")
print('Username:{} and password {}'.format(username, password))
return HttpResponse("INVALID LOGIN DETAILS SUPPLIED")
else:
return render(request, 'basic_app/login.html', {})
这是我的 login.html 文件
{% extends 'basic_app/base.html' %}
{% block body_block %}
<div class = 'jumbotron'>
<h1>Please Login</h1>
<form action="{% url 'basic_app:user_login' %}" method="POST">
{% csrf_token %}
<label for="username">Username</label>
<input type="text" name="username" placeholder="Enter Username">
<label for="password">Password:</label>
<input type="password" name="password" placeholder="Enter Password">
<input type="submit" value="submit">
</form>
</div>
{% endblock %}
您的代码似乎有错别字:
if user.is_ative:
应该是:
if user.is_active:
我是 django 的初学者,最近从一门课程中学习它,我正在研究身份验证以及登录和注销功能,这是我的错误
这是我的 views.py 文件
def user_login(request):
if request.method == "POST":
username = request.POST.get('username')
password = request.POST.get('password')
user = authenticate(username=username, password=password)
if user:
if user.is_ative:
login(request, user)
return HttpResponseRedirect(reverse('index'))
else:
return HttpResponseRedirect("ACCOUNT NOT ACTIVE")
else:
print("Someone tried to login and failed")
print('Username:{} and password {}'.format(username, password))
return HttpResponse("INVALID LOGIN DETAILS SUPPLIED")
else:
return render(request, 'basic_app/login.html', {})
这是我的 login.html 文件
{% extends 'basic_app/base.html' %}
{% block body_block %}
<div class = 'jumbotron'>
<h1>Please Login</h1>
<form action="{% url 'basic_app:user_login' %}" method="POST">
{% csrf_token %}
<label for="username">Username</label>
<input type="text" name="username" placeholder="Enter Username">
<label for="password">Password:</label>
<input type="password" name="password" placeholder="Enter Password">
<input type="submit" value="submit">
</form>
</div>
{% endblock %}
您的代码似乎有错别字:
if user.is_ative:
应该是:
if user.is_active: