域限制不做任何事情

您好,我有一个简单的表格,我想在其中保存信息。我在我的表单中添加了域限制,但它仍然保存具有其他电子邮件域的电子邮件。我是 django 的新手,所以也许这是一件容易的事,谢谢。


models.py


from 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.name

forms.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 email

views.py


    class WPGroupView(generic.CreateView):

        template_name='wp.html'

        form=WPGroupForm

        model=WPGroup

        fields=['name','mail','bolum','number']

        success_url='success/'


有只小跳蛙
浏览 134回答 1
1回答

翻翻过去那场雪

您应该使用form_class属性而不是form:    class WPGroupView(generic.CreateView):         template_name='wp.html'         form_class=WPGroupForm         model=WPGroup         success_url='success/'此外,您的验证方法必须是名称,clean_**fieldname**所以它应该是clean_mail而不是clean_email.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python