Запрет регистрации с определенных email доменов в Djanga
Всем привет!
Помогите реализовать проверку почтовых доменов из черного списка при регистрации юзера: если домен попадает в этот список, то регистрацию запретить и вывести меседж типа "регистрация с этого домена запрещена".
Ответы (1 шт):
Автор решения: Vadim.Sharoikin
→ Ссылка
создаете файл validators.py (там же где и views.py и т.д.) и пишите в него что-то такое
from django.core import validators
from django.core.exceptions import ValidationError
def validate_even(value):
if 'mail.ru' in value :
raise ValidationError(
f'{value} регистрация с mail.ru запрещена ',
params={'value': value},
)
для примера использовал конкретно строку, но думаю не составит труда пройтись циклом по каком-нибудь листу, в который передать все "запрещенные" домены почтовых ящиков.
дальше в свою форму добавляете
from .validators import validate_even
class NameForm(ModelForm):
mail=forms.CharField(label = 'email',validators=[validate_even])
ну и собственно все