Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 域限制不起任何作用_Python_Django - Fatal编程技术网

Python 域限制不起任何作用

Python 域限制不起任何作用,python,django,Python,Django,你好,我有一个简单的表单,我想保存信息。我在表单中添加了域名限制,但它仍然可以保存其他电子邮件域名的电子邮件。我是django的新手,所以也许这是一项简单的任务,谢谢 models.py from django.db import models class WPGroup(models.Model): name=models.CharField(max_length=128,blank=False) number=models.PositiveInte

你好,我有一个简单的表单,我想保存信息。我在表单中添加了域名限制,但它仍然可以保存其他电子邮件域名的电子邮件。我是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
    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
    class WPGroupView(generic.CreateView):
        template_name='wp.html'
        form=WPGroupForm
        model=WPGroup
        fields=['name','mail','bolum','number']
        success_url='success/'
forms.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
    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
    class WPGroupView(generic.CreateView):
        template_name='wp.html'
        form=WPGroupForm
        model=WPGroup
        fields=['name','mail','bolum','number']
        success_url='success/'
views.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
    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
    class WPGroupView(generic.CreateView):
        template_name='wp.html'
        form=WPGroupForm
        model=WPGroup
        fields=['name','mail','bolum','number']
        success_url='success/'

您应该使用
form\u class
attribute而不是
form

类WPGroupView(generic.CreateView):
模板_name='wp.html'
form_class=WPGroupForm
模型=WPGroup
success\u url='success/'

此外,您的验证方法必须是name
clean\u**fieldname**
,因此它应该是
clean\u mail
,而不是
clean\u email

您的字段似乎被称为“mail”,因此该方法应该是
clean\u mail
,不
clean_email
。我更改了它,但它仍然是您所使用的,但表单类和字段不允许一起使用,我更改了它,也许您也可以在回答中删除它。