关于登录的问题
来源:6-5 登录表单
宿命让我遇见你
2020-08-09 10:32:03


def user_login(request):
if request.method == 'POST':
form=UserLogin(request.POST)
if form.is_valid():
data=form.cleaned_data
user=authenticate(request,username=data['username'],password=data['password'])
if user is not None:
login(request,user)
return redirect('student')
else:
print(form.errors)
else:
form=UserLogin()
return render(request,'user_login.html',{
'form':form
})
class UserLogin(forms.Form):
username=forms.CharField(label='用户名',max_length=32,error_messages={
'required':'请输入用户名'
})
password=forms.CharField(label='密码',max_length=64,widget=forms.PasswordInput,error_messages={
'required':'请输入密码'
})
#verify_code=forms.CharField(label='验证码',max_length=4)
def clean_username(self):
username=self.cleaned_data['username']
if len(username)>=10:
raise forms.ValidationError('用户名太长请重新输入')
return username
def clean(self):
cleaned_data=super().clean()
username=cleaned_data.get('username',None)
password=cleaned_data.get('password',None)
if username and password:
user_list=User.objects.filter(username=username)
if user_list.count()==0:
raise forms.ValidationError('用户名不存在!')
if not authenticate(username=username,password=password):
raise forms.ValidationError('密码错误!')
return cleaned_data
老师,你好,为什么表单里没输入什么内容,也没有错误提醒,但是点击登录就可以跳转到student页面?
1回答
同学,你好。登录按钮应该使用button按钮实现,a标签是超链接,因此是可以跳转到对应的页面中的


如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~
相似问题