설치가 완료되었다면 pgAdmin 4
라는 앱이 설치가 되었을 것이다.
이녀석을 클릭하면,
이런녀석이 뜰거다.
sqlite를 써봤을 때와 같이 이녀석은 하나의 서버이다.
여기서 Sever 버튼을 누르고 그 아래 버튼을 누르면,
여기에 아까 처음에 기억해둔 패스워드를 넣어주자.
그럼 이런식으로 화면이 뜰텐데,
결국 이게 DB를 그래프로 깔끔하게 나타낸 상태이다.
이제 우리는 여기서 내가 데이터를 저장할 새로운 데이터베이스를 만들어볼 거다!
실습
databases
=>create
=>Database
를 눌러주자.그리고 데이터베이스의 이름과 내용을 담아주자.
Owner 는 이 데이터베이스의 사용자, superuser, admin 으로 생각하면 된다.
저장을 눌러주면, Databases 에 새로운 데이터 베이스가 생겼음을 알 수 있다.
여기까지 해주면, blog를 클릭했을 때 막 이상한게 많이 생겼다.
지금은 그냥 넘어가고 자습으로 커버하도록 하자.
우리는 여기서 이걸 어떻게 연결지을지만 생각해보자.
장고 프로젝트에서 얘를 가리키고, 연결시키자.
settings.py
로 가보자.# settings.py # Database # https://docs.djangoproject.com/en/2.1/ref/settings/#databases DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } }
여기서 우리가 명시해줘야 하는 것
- postgreSQL 을 사용한다.
- 그 중 blog 라는 이름의 DB를 사용한다.
- 그리고 그곳의 superuser는
postgres
라는 녀석이다.
자, 저기
settings.py
에 어떤 주소가 주석으로 적혀있는데, 여길 가보자.공식 문서에 밑으로 가다보면
PostgreSQL
은 DB에 어떤식으로 적어주면 되는지 명시되어 있다.# official django documents DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'mydatabase', 'USER': 'mydatabaseuser', 'PASSWORD': 'mypassword', 'HOST': '127.0.0.1', 'PORT': '5432', } }
이 양식에 맞춰써주면 되니까,
# settings.py DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'blog', 'USER': 'postgres', 'PASSWORD': '1234', 'HOST': '127.0.0.1', # or 'local host' 'PORT': '5432', } }
자, 이 과정까지 완료했다면, 우리는 더이상 django의 기본 DB인
DB.sqlite
가 아닌PostgreSQL
로 DB를 넣을 준비가 되었다.즉, 가르킨 과정까지 완료했다.
DB 를 수정하면 항상 해줘야 하는 일이,
$ python manage.py migrate
이걸 해주자.
이렇게하고 서버를 켜보자.
그리고
/admin
으로 가서 로그인을 해보면!안될거야.
왜냐면 superuser가 다 없어졌거든
DB.sqlite 에 superuser도 다 저장이 되어 있는 거야.
그래서 아무일도 안일어나.
그래서 이제 새로 우리가 만들어줘야해.
$ python manage.py createsuperuser
새로 계정을 만들어주고, 서버키고
/admin
으로 다시들어가보자.이제 잘 접속되는 것을 볼 수 있다.
원래 우리가 만들어 줬던 Blogs 를 들어가보면 아무것도 없을 거야.
왜냐면 DB를 바꿔줬거든.
이렇게까지 하면 연동이 되었다고 생각하면 된다.
그런데 만약에 다시 sqlite로 돌아가고 싶으면?
settings.py
로 가서 예전꺼로 바꿔주고,다시 migrate 해주면 끝!