这是我的注册表单,
class SignupForm(forms.ModelForm):
class Meta:
model = User
fields = ['first_name', 'last_name','username', 'email', 'password']
def clean_username(self):
username = self.cleaned_data.get('username')
email = self.cleaned_data.get('email')
if username and User.objects.filter(username=username).exclude(email=email).count():
raise forms.ValidationError('This username has already been taken!')
return username
这可以很好地检查是否存在相同的用户名。但是,它不检查不区分大小写。如果有一个用户名,例如“userone”,那么它也接受带有“Userone”的用户名。虽然它没有破坏任何功能,但看起来很不专业。
我的问题是如何检查表单中不区分大小写的权利,并引发错误?
猛跑小猪
哈士奇WWW
不负相思意
相关分类