您好,我有一個(gè)簡(jiǎn)單的表格,我想在其中保存信息。我在我的表單中添加了域限制,但它仍然保存具有其他電子郵件域的電子郵件。我是 django 的新手,所以也許這是一件容易的事,謝謝。models.pyfrom django.db import models class WPGroup(models.Model): name=models.CharField(max_length=128,blank=False) number=models.PositiveIntegerField(blank=False) bolum=models.CharField(max_length=128,blank=False) mail=models.EmailField(max_length=128,blank=False) def __str__(self): return self.nameforms.py from django import forms from .models import WPGroup class WPGroupForm(forms.ModelForm): class Meta: model=WPGroup fields=['name','number','bolum','mail'] def clean_email(self): email = self.cleaned_data['mail'] if "@itu.edu.tr" not in email: raise forms.ValidationError("You must include @itu.edu.tr") return emailviews.py class WPGroupView(generic.CreateView): template_name='wp.html' form=WPGroupForm model=WPGroup fields=['name','mail','bolum','number'] success_url='success/'
1 回答

翻翻過(guò)去那場(chǎng)雪
TA貢獻(xiàn)2065條經(jīng)驗(yàn) 獲得超14個(gè)贊
您應(yīng)該使用form_class
屬性而不是form
:
class WPGroupView(generic.CreateView): template_name='wp.html' form_class=WPGroupForm model=WPGroup success_url='success/'
此外,您的驗(yàn)證方法必須是名稱,clean_**fieldname**
所以它應(yīng)該是clean_mail
而不是clean_email
.
添加回答
舉報(bào)
0/150
提交
取消