Django email field invalid for international email (in non-english)

I am using django REST framework. This is my user model extended from AbstractUser

class User(AbstractBaseUser, PermissionsMixin):
    email = models.EmailField(_('email address'), unique=True)

I am now trying to check for multiple languages my models can work.

When I validate the user object serializer using if user_serializer.is_valid(): it gives me false.

I tried entering the user details by django admin panel but there it says Email is invalid

All other fields like models.CharField work perfectly fine with other languages. But this email field does not work.

EmailField is using EmailValidator class by default which might result in an unexpected outcome. You can simply pass a custom validator class that whitelisted the domains you want. Here is the default class you might want to extend or overwrite. There is an answer with more details in StackOverflow in case you need more details.

Back to Top