장고 프로젝트는 하나의 웹사이트라고 생각하면 된다. 프로젝트 안에는 여러 개의 앱이 존재하는데 이 앱들이 모여 웹사이트를 구성한다. 여기서 앱은 프로젝트를 구성하는 작은 단위로서 관리자 앱, 인증 앱 등과 같이 장고가 기본적으로 제공하는 앱과 개발자가 직접 만든 앱을 의미한다.
프로젝트 디렉터리 생성
(1단계) 프로젝트 루트(root) 디렉터리 생성
프로젝트를 모아 둘 루트 디렉터리 생성은 필수다. 여기서는 프로젝트 루트 디렉터리 이름을 projects로 지었다.
D:\projects
(2단계) 프로젝트 루트 디렉터리 안에서 가상 환경에 진입
프로젝트 루트 디렉터리 안에서 다음 명령어를 입력해 앞에서 만든 mysite 가상 환경에 진입한다.
C:\venvs\mysite\Scripts\activate
D:\projects>C:\venvs\mysite\Scripts\activate (mysite) D:\projects> |
(3단계) 장고 프로젝트를 담을 디렉터리를 생성하고 이동
장고 프로젝트를 담을 mysite 디렉터리를 생성하고 이동하자.
(mysite) D:\projects>mkdir mysite (mysite) D:\projects>cd mysite (mysite) D:\projects\mysite> |
(4단계) 장고 프로젝트 생성
장고 프로젝트를 디렉터리에서 django-admin이라는 도구로 장고 프로젝트를 생성한다. 이때 config 다음에 점 기호(.)가 있음을 주의하자. (.)기호는 "현재 디렉터리를 프로젝트 디렉터리로 만들라"는 의미이다.
(mysite) D:\projects\mysite>django-admin startproject config . (mysite) D:\projects\mysite> |
(5단계) 장고 프로젝트 내용물 확인
4단계까지 완료되면 아래와 같은 구조로 디렉터리와 파일이 생성된다.
개발 서버 구동하고 웹 사이트 접속해 보기
이제 웹사이트를 생성한 것과 다름없다. 개발 서버를 구동하고 웹사이트에 접속해 보자.
# 개발 서버 구동
python manage.py runserver
# 개발 서버 종료
Ctrl + C
# 접속 확인
127.0.0.1:8000
or localhost:8000
(1단계) 개발서버 구동
python manage.py runserver 명령을 실행하면 개발 서버가 구동된다.
(mysite) D:\projects\mysite>python manage.py runserver Watching for file changes with StatReloader Performing system checks... System check identified no issues (0 silenced). 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. August 03, 2022 - 09:26:33 Django version 3.1.3, using settings 'config.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CTRL-BREAK. |
맨 아래에 "Quit the server with CTRL-BREAK"라는 메시지는 개발 서버를 종료하려면 [Ctrl+C]를 누르라는 뜻이다.
(2단계) 접속 확인
개발 서버가 구동된 상태에서 웹 브라우저를 이용하여 127.0.0.1:8000에 접속해 보자. 그러면 아래와 같이 장고가 기본으로 만든 웹사이트 화면을 볼 수 있다.
아쉽게도 아직은 개발 서버 환경에서 사이트가 실행되고 있으므로 개발 서버 환경을 실행한 로컬 컴퓨터에서만 사이트에 접속할 수 있다. 다른 사람들도 접속할 수 있게 하는 기능은 파이보를 만든 후에 추가할 것이다!
(3단계) 개발 서버 종료하기
[Ctrl+C]를 눌러 개발 서버를 종료한다. 개발 서버가 종료되면 아래와 같이 127.0.0.1:8000으로 mysite에 접속할 수 없다.
mysite 가상 환경에 간단히 진입하기
mysite 가상 환경에 진입하려면 매번 명령 프롬프트를 실행하고 C:\venvs\mysite\Scripts 디렉터리로 이동하여 activate 명령을 수행해야 한다. 이러한 번거로움을 없애기 위해 배치 프로그램을 만들어서 간단하게 처리해 보자.
(1단계) mysite.cmd 배치 파일 생성하기
mysite.cmd 파일을 venvs 디렉터리에 생성하고 다음과 같이 작성하여 저장한다. 확장자 [.cmd]가 붙은 파일을 배치파일이라 부르며, 명령어 입력과 실행을 한 번에 해주는 파일이라 생각하면 된다.
@echo off D: cd projects/mysite C:/venvs/mysite/Scripts/activate |
(2단계) 배치 파일 위치를 PATH 환경 변수에 추가하기
위의 배치 파일이 명령 프롬프트 어느 곳에서나 수행될 수 있도록 C:/venvs 디렉터리를 시스템의 환경 변수 PATH에 추가해야 한다.
먼저 [윈도우+R] 키를 입력하여 sysdm.cpl 명령어를 입력한 다음 [확인]을 누른다.
[고급] 탭을 선택하고, [환경 변수] 버튼을 클릭한다.
사용자 변수 중 "path"를 선택하고 [편집] 버튼을 누른다.
"환경 변수 편집" 창에서 [새로 만들기] 버튼을 클릭하여 "C:\venvs"라는 디렉터리를 추가하고 [확인] 버튼을 클릭한다.
(3단계) PATH 환경 변수 확인하기
위와 같이 설정을 하면 이제 mysite.cmd 명령을 어디서든 실행할 수 있다. 명령 프롬프트를 다시 실행해서 set path 명령을 실행하여 변경된 환경 변수 PATH의 내용을 확인해 보면 C:\venvs가 추가되어 있는 것을 확인할 수 있다.
C:\Users\user>set path Path=C:\Program Files (x86)\Razer\ChromaBroadcast\bin;C:\Program Files\Razer\ChromaBroadcast\bin;D:\app\java\apache-tomcat-9.0.56\bin;D:\app\java\jdk1.8.0_311\bin; ... C:\Users\user\AppData\Local\Programs\Python\Python310\Scripts\;C:\Users\user\AppData\Local\Programs\Python\Python310\;C:\Users\user\AppData\Local\Microsoft\WindowsApps;;D:\app\python\Microsoft VS Code\bin;C:\venvs;C:\Program Files (x86)\ESTsoft\ALSee\x64 PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC C:\Users\user> |
(4단계) 배치 파일 실행하여 가상 환경에 진입하기
마지막은 mysite 명령을 실행하여 가상 환경에 잘 진입하는지 확인해 보자. 참고로 윈도우에서 확장자가 [.cmd]인 파일은 확장자까지 입력하지 않아도 된다.
C:\Users\user> mysite (mysite) D:\projects\mysite> |
여기까지.
'개발자모드 > 혼자공부하는파이썬' 카테고리의 다른 글
[장고#04] 주소와 화면을 연결하는 URL과 뷰(view) (0) | 2022.08.09 |
---|---|
[장고#03] 파이참 다운로드 후 설치, 인터프리터 설정, 장고개발서버 실행 (ft. 개발서버 한글로 변경-setting파일수정) (0) | 2022.08.05 |
[장고#01][웹개발환경셋팅] 파이썬 가상 환경 만들기 및 장고 설치하기 (0) | 2022.08.02 |
다음 파이썬 공부는 [점프 투 장고]로 정했다. 웹 개발 Go! (0) | 2022.07.29 |
[파이썬#24][고급] 클래스의 추가적인 구문 - isinstance(), 클래스 변수와 함수, 상속, 가비지컬렉터, 게터와 세터 ★혼공파 최종편★ (0) | 2022.07.28 |
댓글