개발/Django

[Django] 장고 프로젝트 시작하기 3편

p-code 2024. 3. 11. 07:42

데이터베이스 생성 및 마이그레이션 + 관리자 페이지(admin)

 

1. 데이터베이스 생성 및 마이그레이션

- 이전 포스팅에서, 서버를 실행했을 때 아래 이미지처럼 SQLite DB가 기본경로에 생성되었을 것이다. (db.sqlite3)

 

- DB가 없을 경우 서버를 실행하면 기본적으로 SQLite DB가 생성된다. 아래와 같은 에러가 발생하는 이유는 DB가 생성되었지만 관리자 페이지(admin)에서 사용할 데이터베이스가 없기 때문에 마이그레이션을 진행하라는 의미이다.

You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

 

- 아래 명령을 통해 마이그레이션을 진행해 보자. 명령 실행 시 아래와 같이 적용된다.

python manage.py migrate

 

 

2. 관리자 페이지 접속하기

- 장고에서는 기본적으로 연결된 DB의 CRUD를 해 볼 수 있는 관리자 페이지를 제공한다. 최초 마이그레이션을 진행하면 해당 페이지에 접속할 수 있다.

- 관리자 페이지 접속 주소 : 127.0.0.1:8000/admin

 

3. 관리자 페이지 계정 만들기

- 관리자 페이지에 로그인할 수 있는 계정은 쉘에서 아래 명령어를 수행하여 생성한다.

python manage.py createsuperuser

 

- 계정은 admin으로 하였고, 패스워드는 이메일과 동일하게 입력하여 The password is too similar to the email address.라는 경고 문구가 떴다. y입력하여 무시하고 진행하였다.

 

- 생성한 계정으로 로그인하면 관리자 페이지에서 사용하는 Groups와 Users테이블을 관리할 수 있도록 하는 페이지가 나온다.  앞으로 몇 가지 추가 작업만으로 생성한 테이블에 대한  CRUD작업을 위 페이지에서 할 수 있다.