개발 기록
[Django] admin 계정 관련 오류 본문
1. 'User' object has no attribute 'has_module_perms'
admin 계정을 만들고 로그인 했더니 뜬 에러
검색해보니 커스텀 유저를 사용해서 그런 것 같다 PermissionsMixin를 추가해줌
문서를 참고- PermissionsMixin는 사용자 모델의 클래스 계층에 포함할 수 있는 추상 모델로, Django의 권한 모델을 지원하는 데 필요한 모든 메서드와 데이터베이스 필드를 제공한다고 한다
class User(AbstractBaseUser,PermissionsMixin):
id = models.AutoField(primary_key=True)
https://docs.djangoproject.com/en/4.0/topics/auth/customizing/#custom-users-and-permissions
2. You don't have permission to edit anything
저렇게 하고 다시 생성 후 로그인을 했는데 이번엔 권한이 없단다
usermanager클래스에 user.is_superuser = True 추가
class UserManager(BaseUserManager):
# All user
...
# admin user
def create_superuser(self, email, password=None):
user = self.create_user(
email,
password=password,
)
user.is_staff = True
user.is_superuser = True //슈퍼유저임을 알려주는 코드 추가
user.save(using=self._db)
return user
'Python > Django' 카테고리의 다른 글
[Django] simple-jwt 로그아웃 Api + blacklist app (0) | 2022.04.06 |
---|---|
[Django] DRF - 회원가입 , simple jwt 토큰 발행받기 (0) | 2022.04.06 |
[Django] Manager isn’t available; ‘auth.User’ has been swapped for ‘accounts.User’ 에러 (0) | 2022.04.05 |
[Django] 태그 설정 (0) | 2022.04.05 |
Django(python) 개념 (0) | 2022.04.04 |
Comments