メールアドレス(例:goelv@example.com)が与えられた場合、ドメイン( "example.com")が特定のドメインリストに含まれていることを検証するにはどうすればよいですか。ドメイン( "example.com")が指定されたリストにない場合、フォームは何らかのエラーを発生させるはずです。
これは私がforms.pyでこれまでに持っているものです
class UserCreationFormExtended(UserCreationForm):
email = forms.EmailField(required=True)
class Meta:
model = User
fields = ("username", "email", "password1", "password2",)
def clean_email(self):
data = self.cleaned_data['email']
domain = data.split('@')[1]
domain_list = ["gmail.com", "yahoo.com", "hotmail.com",]
if domain not in domain_list:
raise forms.ValidationError["Please enter an Email Address with a valid domain"]
return data
def save(self, commit=True):
user = super(UserCreationFormExtended, self).save(commit=False)
user.email = self.cleaned_data["email"]
if commit:
user.save()
return user
このコードでは、コードの「raiseforms.ValidationError[...]」という行にトレースするエラー「'type'オブジェクトには属性' getitem '」がありません。
誰かが私が間違っていることを見ることができますか?助けてくれてありがとう!