1+ from typing import TYPE_CHECKING
2+
13from django .contrib .auth .hashers import make_password
24from django .contrib .auth .models import UserManager as DjangoUserManager
35
6+ if TYPE_CHECKING :
7+ from {{ cookiecutter .project_slug }}.users .models import User # noqa: F401
8+
49
5- class UserManager (DjangoUserManager ):
10+ class UserManager (DjangoUserManager [ "User" ] ):
611 """Custom manager for the User model."""
712
813 def _create_user (self , email : str , password : str | None , ** extra_fields ):
@@ -17,12 +22,12 @@ def _create_user(self, email: str, password: str | None, **extra_fields):
1722 user .save (using = self ._db )
1823 return user
1924
20- def create_user (self , email : str , password : str | None = None , ** extra_fields ):
25+ def create_user (self , email : str , password : str | None = None , ** extra_fields ): # type: ignore[override]
2126 extra_fields .setdefault ("is_staff" , False )
2227 extra_fields .setdefault ("is_superuser" , False )
2328 return self ._create_user (email , password , ** extra_fields )
2429
25- def create_superuser (self , email : str , password : str | None = None , ** extra_fields ):
30+ def create_superuser (self , email : str , password : str | None = None , ** extra_fields ): # type: ignore[override]
2631 extra_fields .setdefault ("is_staff" , True )
2732 extra_fields .setdefault ("is_superuser" , True )
2833
0 commit comments