我有一個由電子郵件和名稱字段組成的Django表單。我想驗證名稱的字符數超過8個。我已經使用了下面的代碼。但它不起作用。以Django形式進行字段驗證
class SignUpForm(forms.ModelForm):
class Meta:
model=SignUp
fields=('email','name')
def emailValidation(self):
name=self.cleaned_data.get('name')
if len(name) <=8:
raise forms.ValidationError("name cannot be less than 8")
models.py
class SignUp(models.Model):
name=models.CharField(max_length=200)
email=models.EmailField()
timestamp=models.DateTimeField(auto_now_add=True, auto_now=False)
updated=models.DateTimeField(auto_now=True,auto_now_add=False)
def __unicode__(self):
return self.name
views.py
def home(request):
form=SignUpForm(request.POST or None)
if form.is_valid():
instance=form.save(commit=False)
instance.save()
print instance.timestamp
return render(request, 'home.html',{'form':form})
請修復您的縮進。 –
做到了。對不起.. – user2375245
你確定窗體中的縮進與你的實際文件中的縮進相同嗎? –