django 用这代码def clean_username(self): 去验证用户名字符长度。总是不成功?完整代码如下。大家帮我看看是哪的问题?
def clean_username(self):
username = self.cleaned_data['username']
num_words = len(username.split())
if not re.search(r'^\w+$', username, re.U):
raise forms.ValidationError('用户名有问题,不能注册。字符太少或含用奇怪字符!')
if num_words < 4:
raise forms.ValidationError('用户名不能少于四个字符!')
return username
try:
User.objects.get(username=username)
except ObjectDoesNotExist:
return username
raise forms.ValidationError('用户名存在,请修改后注册.')