from django.contrib.auth.base_user import BaseUserManager from .querysets import UserQuerySet class UserManager(BaseUserManager): def get_queryset(self): return UserQuerySet(self.model, using=self._db) def create(self, email, password=None, **kwargs): if password is None: message = "User must have valid password" raise ValueError(message) user = self.model(email=email, **kwargs) user.set_password(password) user.save() return user