티스토리 뷰
석달만에 다시 찾아온 블로그에 마지막 글이 Django 환경셋팅 두번째 이야기라니.
뭐라고 썼는지 쭉 한번 읽어보니 지금 새로 업데이트된 환경셋팅용 bootstrap 하고 내용이 다른 부분들이 있어서 새로 정리의 필요성이 느껴졌다. 그리고 이번에 Django관련 프로젝트를 진행하면서 얻어낸 노하우도 함께 배워보는 시간을 가져보도록하자.
치밀어 오르는 현기증은 잠시 내려두고 django-bootstrap 을 사용하기 위한 기본 환경 조건을 알아보도록 하자.
- 운영체제 : Windows10
(리눅스/맥용 개발환경은 차차 개발 예정, 맥용 환경은 일단 맥북을 구입해야 하므로 언제가 될지 알 수 없음) - 기본 IDE : Visual Studio Code
- 기본 터미널 : cmd 터미널
(Visual Studio Code에서 컨트롤 + P 누른담에 ">Terminal: Select Default Shell"를 입력하고 엔터를 치면 Command Prompt와 PowerShell을 고르라고 나오는데 거기서 Command Prompt를 선택할 것) - Python 버전 : 3.6.4 기준으로 작업했으나 버전이 3.x 라면 그럭저럭 돌아갈거다. 테스트 해보진 않았다. (3.5.x 에서는 테스트 해봄)
적당한 폴더에 다운로드를 하고 압축을 풀어주자.
이렇게 폴더를 구성했다면 이제 이 폴더는 Django 프로젝트 폴더가 되시겠다.
Visual Studio Code의 폴더 열기를 통해 이 폴더를 연다.
이렇게 폴더를 열었다면 Visual Studio Code의 왼편에 있는 탐색기 패널이 아래의 이미지 처럼 나올거다.
여기까지 따라왔다면 이제 절반은 완료.
이제 가상환경을 만들어 본다.
"작업 > 작업실행" 메뉴를 실행한다.
이걸 누르면 내가 미리 등록해둔 작업 목록들이 나타날 거다.
자, 여기서 맨 처음 해줄것은 가상환경을 만드는 거다. "Create ENV"를 선택한다.
그럼 위와 같은 메뉴가 등장할텐데 그냥 "작업 출력을 스캔하지 않고 계속"을 선택해주면 된다.
이렇게 Visual Studio Code 창 하단에 터미널이 열리면서 알아서 막 가상환경을 만들어 낼거다.
중간에 "You are using pip version 9.0.3...." 어쩌고 하는 노란 텍스트는 내가 pip 명령어를 업데이트 하지 않아서 발생한 일인데 그건 뭐 귀찮아서 아직 안한거니까 너무 신경쓰지 말 것.
암튼 이렇게 작업이 끝나면 "닫으려면 아무 키나 누르세요." 메시지가 나온다. 터미널에 마우스 클릭 한번 해주고 아무키나 눌러주면 창이 닫힌다.
그 다음에 할 건 "Initialize for local" 이라는 항목이다. Django 개발을 위한 필수 라이브러리들을 다운로드 시켜준다.
실행방법은 다 똑같다. 걍 아까 처럼 하면 됨.
그러면 알아서 필요한 기본 라이브러리들을 다운로드 하게 된다.
이 내용을 바꾸고 싶다면 "requirements" 폴더의 텍스트 파일을 수정하면 되는데 base.txt 파일을 보면 지금은 그냥 django와 mysqlclient만 들어가 있을거다. 여기에 더 추가할 수도 있고, 또는 로컬환경에서만 설치할 내용이라면 local.txt, 테스트 환경에서 추가할 라이브러리라면 test.txt 파일을 수정하면 된다. 배포환경이라면 production.txt 파일을 수정한다.
local.txt, text.txt, production.txt 파일들은 기본적으로 base.txt 파일을 상속받아 동작하기때문에 base.txt 파일은 환경에 상관없이 필요한 필수 라이브러리를 추가하면 된다.
첫번째로 가상환경을 만들었고
두번째로 필요한 라이브러리들을 다운로드 했다.
이제 세번째로 프로젝트를 만들어보도록 하자.
"Create Project" 메뉴를 선택하고 실행하면 이전하고는 좀 다른 모양으로 실행될거다.
이때 원하는 프로젝트 이름을 정해서 입력한다. 나는 "myhome"이라고 짓겠다.
이렇게 실행되면 위와 같은 메시지가 등장하게 되고 좌측에 탐색기 패널에는 myhome 이라는 폴더가 생성된 것을 확인 할 수 있다.
myhome을 들여다 보자.
이 bootstrap은 기본 데이터베이스를 mysql로 잡고 시작하도록 되어있다. 본인이 만약 postgreSQL을 원한다거나 SQLite를 원한다면 myhome/settings/local.py 파일을 열어서 내용을 수정하면 된다. 테스트 환경은 test.py, 배포환경은 production.py를 수정하면 된다.
여기서는 mysql 기준으로 작업한다.
나는 미리 내 개발 PC에 MySQL을 설치했고 myhome이라는 스키마도 미리 생성해뒀다.
그래서 아래와 같이 local.py 파일을 수정했다.
이렇게 셋팅이 완료 되었다면 이제 Django 환경셋팅은 마무리 되었다고 생각하면 된다.
이제 서버를 실행시킨다.
이렇게 프로젝트 명을 적어주고..
로컬환경에서 실행할거니까 소문자 엘(l)을 입력하고..
엔터를 치면 아래와 같이 메시지가 나오며 Django가 실행된다.
일단 지금 상태는 브라우저를 열어서 127.0.0.1:8000으로 접속해보면 실행되어있는 Django 화면을 볼 수 있다.
하지만 저 빨강 사각형으로 표시해둔 메시지가 신경이 쓰인다. 저 메시지는 뭐냐하면 Migration을 실행해야하는데 아직 실행이 안되었다며 어서 실행해서 DB를 초기화 해달라는 이야기다.
자 그렇다면 migrate를 실행하도록 하자.
실행하게되면 위와같은 메시지를 볼 수 있는데 2번 MakeMigrations는 말 그대로 makemigrations 명령을 실행하고 1번 Migrate는 migrate 명령을 수행하게 된다. 지금은 1번 명령을 수행해야하니까 1번을 입력하고 엔터를 치면 된다.
이렇게 명령을 수행하고 나면 아래와같이 DB에 필요한 table들을 생성해 넣은 것을 확인할 수 있습니다.
그러면 아까의 Run Server를 돌렸던 터미널 창에서 컨트롤 + c 를 입력하면 서버가 종료된다.
다시 서버를 실행시켜보도록 하자.
이렇게 정상적으로 실행된 것을 확인할 수 있다. 아까의 에러(?) 메시지도 없고 쾌적하다.
이것으로 Django 셋팅에 대한 이야기는 끝이 되겠다.
버전도 계속 변하고 안정화도 안되고 기능도 없었는데 요 몇달 안정화와 프로젝트 진행을 위해 안정화도 거쳐서 앞으로 수정할 일이 별로 없을거라고 예상하고 이제 슬슬 Django에 대한 이야기를 진행 할 수 있을것 같다.
일단 준비는 마쳤으니 다음 시간엔 모델을 만들고 쿼리를 짜고 간단한 내용을 출력하는 법을 배워보도록 하자.
아참, Django Rest Framework 로 API 서버를 만드는 법을 배울거다. HTML 같은건 안할 거니까 그건 다른데서 찾도록.
오늘은 가볍게 여기까지.
'Dev > Python' 카테고리의 다른 글
Django Model과 Migrate 그리고 Serializers. (0) | 2018.05.30 |
---|---|
Django restframework 시작하기 - Hello,World (0) | 2018.05.29 |
Django 시작하기 #2. 환경설정 두번째 이야기 (0) | 2018.03.09 |
텐서플로(Tensorflow) 선형회귀분석 #1 (0) | 2018.01.19 |
텐서플로(Tensorflow) 시작하기 (0) | 2018.01.18 |