我的问题是当我点击我的登录页面中的提交按钮时,它不会检查输入的用户名和密码是否正确用户名和密码匹配。即使我留空了我的用户名和密码字段,然后点击提交按钮重定向到我在html代码(动作)中定义的索引页面如下:
现在我想当我输入username = aa,password = bb然后只有它重定向到索引页面,否则如果用户名密码不正确或未输入,则保留在登录页面。
实际上我是django的新手,甚至我使用了authenticate(... ......),如下所示:
不知道这样做的确切方法。
def login(request):
template = "../templates/admin/login.html"
data ={
}
user = auth.authenticate(username='aa', password='bb')
if user is not None and user.is_active:
auth.login(request, user)
return render_to_response( template, data,
context_instance = RequestContext( request ) )
return HttpResponseRedirect('/index/')
<form id="FormName11" action="/index/" method="post" class="prettyformlogin" name="FormName11">
{% csrf_token %}
<table width='448' border='0' cellspacing='2' cellpadding='0'>
<tr>
<td><b>Username</b></td>
<td><input id='username' type='text' name='username'></td>
</tr>
<tr>
<td><b>Password</b></td>
<td><input id='password' type='password' name='password'>
</td>
</tr>
<tr>
<td></td>
<td><input type='submit' name='Submit' value='Login'></td>
</tr>
提前thanx
答案 0 :(得分:2)
为什么不使用登录?
http://docs.djangoproject.com/en/dev/topics/auth/#django.contrib.auth.login
用户肯定存在吗?为什么不尝试一些“打印”来看看发生了什么?
答案 1 :(得分:0)
我的问题是当我点击提交时 我的登录页面中的按钮不会 检查输入的用户名和 密码是否正确 用户名和密码匹配。如果 我留空了我的用户名和密码 字段,然后单击提交按钮 重定向到我定义的索引页面 在html代码(动作)如下:
如果我正确地看着这个。你甚至从来没有从表单中获取值...你只是检查明确定义的username ='aa'和password ='bb'
你的views.py中的
user = auth.authenticate(username='aa', password='bb')
您需要查看获取提交的数据:
def my_view(request):
username = request.POST['username']
password = request.POST['password']
user = authenticate(username=username, password=password)
# etc...