본문 바로가기

개발/django

유저 모델의 create_user() 함수에 별도의 field를 인자로 넣고 싶을 때

반응형
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#유저 매니저를 생성해서, create_user에 추가를 원하는 필드명을 넣어준다 
class BUserManager(BaseUserManager):
def create_user(self, name, gender, password):    
    user = self.model(        
        username=name,        
        name=name,        
        gender=gender,    
    )    
    user.set_password(password)    
    user.is_staff = False    
    user.is_active = True    
    user.is_superuser = False    
    user.save(using=self.db)    
    return user
 
#Abstract유저를 상속받은 커스텀 유저에 원하는 필드를 Required_fields에 추가한다.
class BUser(AbstractBaseUser, PermissionsMixin):
    쏼라쏼라필드 ABC...
    gender = models.CharField(max_length=2, choices=SEX_CHOICES, default="OT",blank=True,null=True)
    REQUIRED_FIELDS = ['gender',]
    objects = BUserManager()
cs


반응형