XH_Digital_Management/application/accounts/forms.py

26 lines
977 B
Python
Raw Normal View History

2024-05-29 15:25:17 +08:00
from django import forms
2024-06-15 12:34:06 +08:00
from django.contrib.auth import get_user_model
2024-05-29 15:25:17 +08:00
from django.contrib.auth.forms import AuthenticationForm
2024-06-15 12:34:06 +08:00
User = get_user_model()
class EmailAuthenticationForm(AuthenticationForm):
2024-05-29 15:25:17 +08:00
username = forms.EmailField(label="Email", required=True)
2024-06-15 12:34:06 +08:00
password = forms.CharField(label="Password", widget=forms.PasswordInput, required=True)
def clean(self):
email = self.cleaned_data.get('username')
password = self.cleaned_data.get('password')
if email and password:
try:
user = User.objects.get(email=email)
if not user.check_password(password):
raise forms.ValidationError('请输入一个正确的用户名和密码。注意,两者都区分大小写。')
except User.DoesNotExist:
raise forms.ValidationError('请输入一个正确的用户名和密码。注意,两者都区分大小写。')
return self.cleaned_data