본문 바로가기
컴퓨터 활용/노년에 즐기는 코딩

Django 관리자(superuser) 계정 확인 및 비밀번호 재설정 방법

by easyfly 2025. 6. 12.
반응형

Django 관리자(superuser) 계정 확인 및 비밀번호 재설정 방법

Django 프로젝트를 진행하다 보면, 관리자 페이지에 접속하려고 할 때 다음과 같은 문제를 겪는 경우가 많습니다.

  • 관리자 계정을 만들었는지 기억이 나지 않는다
  • 계정은 있는데 비밀번호를 잊어버렸다
  • 관리자 페이지는 열리는데 CSS가 깨져있다
  • 새로 서버를 열었는데 로그인 정보가 먹히지 않는다

이 글에서는 이미 생성된 Django 관리자 계정을 확인하는 방법, 비밀번호 재설정 방법, 그리고 필요시 새로운 계정 생성 방법까지 자세히 설명드립니다.


1. 관리자 계정 확인 방법

가상환경 활성화

먼저, 프로젝트의 가상환경을 활성화합니다.

source venv/bin/activate

그리고 프로젝트 루트 디렉터리(예: manage.py가 있는 위치)에서 다음 명령을 실행합니다.

Django 쉘 실행

python manage.py shell

쉘이 열리면 다음 코드를 입력합니다:

from django.contrib.auth.models import User
User.objects.filter(is_superuser=True)

이 명령은 현재 슈퍼유저 계정 목록을 보여줍니다. 예를 들어 아래와 같은 출력이 나왔다면,

<QuerySet [<User: resonance>]>

→ resonance라는 이름의 관리자 계정이 이미 존재한다는 뜻입니다.


2. 비밀번호 재설정 방법

관리자 계정은 있는데 비밀번호를 몰라 로그인할 수 없을 경우, 아래 명령어로 비밀번호를 재설정할 수 있습니다.

python manage.py changepassword resonance

resonance는 앞서 조회한 사용자 이름입니다. 이 명령어를 입력하면 다음과 같은 프롬프트가 표시됩니다:

Changing password for user 'resonance'
Password: ********
Password (again): ********

비밀번호를 두 번 입력하면 해당 사용자 계정의 비밀번호가 새롭게 설정됩니다.


3. 관리자 계정이 없는 경우: 새로 생성

만약 User.objects.filter(is_superuser=True)의 결과가 []처럼 빈 리스트라면, 슈퍼유저 계정이 존재하지 않는 것입니다. 이럴 경우에는 다음과 같이 계정을 새로 만듭니다.

python manage.py createsuperuser

그러면 다음과 같은 절차가 진행됩니다:

Username: resonance
Email address: your@email.com
Password:
Password (again):

정보를 입력하면 새로운 관리자 계정이 생성됩니다.


4. 관리자 페이지 CSS 깨짐 해결법

관리자 로그인 화면이 열리긴 하지만 디자인이 깨져 있을 경우, 정적 파일(static files)이 제대로 수집되지 않았기 때문입니다. 다음을 따라 처리합니다.

settings.py 확인

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')  # 예: 'staticfiles'

정적 파일 수집

python manage.py collectstatic

개발용 static 파일 서빙 설정 (urls.py)

from django.conf import settings
from django.conf.urls.static import static

urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

이후 개발 서버를 재시작하면 관리자 페이지 디자인도 정상적으로 표시됩니다.


마무리

Django 관리자 계정은 프로젝트 유지관리와 데이터 편집을 위한 중요한 출입구입니다. 계정 확인 및 복구 방법을 잘 익혀두면, 서버 운영 중 발생할 수 있는 당황스러운 상황을 빠르게 해결할 수 있습니다.

필요시 다음을 기억하세요:

  • python manage.py shell로 계정 조회
  • changepassword로 비밀번호 재설정
  • createsuperuser로 새 계정 생성
  • collectstatic과 static 설정으로 CSS 문제 해결

관리자 계정이 제대로 작동해야 Django 프로젝트도 안정적으로 운영될 수 있습니다.

 

반응형

댓글