본문 바로가기

[Python] django 장고 프로젝트 시작하기

액트 2022. 8. 25.
반응형

장고에는 프로젝트라는 개념이 있는데, 장고의 프로텍트는 하나의 웹사이트라고 생각하면 됩니다.

즉, 장고 프로젝트를 생성하면 하나의 웹 사이트를 생성하는 것과 같습니다. 

프로젝트 안에는 여러 개의 앱이 존재합니다. 이 앱들이 모여 웹 사이트를 구성합니다.

여기서 웹이란 관리자 앱, 인증 앱 등과 같이 장고가 기본으로 제공하는 앱과 개발자가 직접 만든 앱을 말합니다.

장고에서 말하는 앱은 일반적으로 안드로이드 앱, iOS 앱과는 다릅니다. 이 앱들은 하나의 프로그램이라면, 장고의 앱은 프로젝트를 생성하는 작은 단위의 기능입니다.

그럼 프로젝트를 생성하여 간단한 사이트를 만들어 보겠습니다. 

모든 작업은 가상환경(virtualenv) 안에서 진행합니다.

콘솔 창 앞에 (myvenv)가 안 보인다면 먼저 virtualenv를 실행해야 합니다. 

 

프로젝트 생성하기

처음할 것은 장고 프로젝트을 시작하는 겁니다. 정확히 말하면 장고 프로젝트의 디렉토리와 파일들을 생성하는 것입니다.

장고에서는 디렉토리와 파일명이 매우 중요합니다.

파일명을 마음대로 변경해서도 안되고 다른 곳으로 옮겨서도 안됩니다. 장고가 중요한 것들을 찾을 수 있게 특정한 구조를 유지해야 합니다.

시작은 다음과 같이 합니다.

아래 명령어를 사용하실 때 끝에 점 . 을 꼭 넣으셔야 합니다. 이 점은 현재 디렉토리에 시작하라는 의미입니다.

프로젝트의 경로는 편의상 C:\projects 디렉토리를 만들고 진행하겠습니다.

C드라이브 밑에 projects 폴더를 하나 생성하고 해당 디렉토리로 이동하여 cmd 창을 실행합니다.

현재 상태는 아래 사진과 같은 상태여야 합니다.

그리고 다음처럼 가상환경을 실행합니다. 

c:\users\사용자이름\myvenv\Scripts\activate

이제 가상환경에서 장고 프로젝트를 생성할 차례입니다.

먼저 mysite 폴더를 생성합니다.

mkdir 명령어는 CMD(명령프롬프트) 에서 폴더를 생성하는 명령어입니다.

(myvenv) C:\projects>mkdir mysite

그리고 mysite 폴더로 이동합니다.

(myvenv) C:\projects>cd mysite

그리고 장고 프로젝트를 생성하는 명령어를 입력합니다.

아래 명령어를 입력하실 때 명렁어 끝에 점 (.) 을 꼭 입력하셔야 합니다. 점의 의미는 현재 디렉토리를 의미합니다.

즉 현재 디렉토리인 C:\proejcts\mysite 밑에 프로젝트를 생성하라 라는 의미입니다.

(myvenv) C:\projects\mysite>django-admin startproject config .

프로젝트가 생성되면 mysite 폴더 밑에 장고가 필요로 하는 여러 폴더와 파일들이 생성됩니다. 

반응형

에러가 나는 경우!!! 대처 방법

하지만..두둥!!!

파이썬 버전은 python 3.10.6 64bit .. 파이썬 3.10 은 django-pydention 내에서 사용되는 collections.callable 참조가 파이썬 3.10부터 collections.abc.callable로 이동하였다고 합니다.

그리하여.. 위 프로젝트 생성 명령어인 django-admin startproject config . 명령어를 입력하시면 에러가 발생하실 겁니다.

만약 시간이 지나 이 에러가 발생하지 않는다면 아래 다운그레이드 하는 작업은 패스하시면 됩니다.

에러 문구

AttributeError: module 'collections' has no attribute 'Iterator'

이 것은 django-pydenticon 이 파이썬 3.10을 지원해야 해결이 되는 이슈라고 합니다.

그럼 지금 상황에서 이 문제를 가장 빠르게 해결할 방법은 파이썬의 버전을 3.9 로 낮추는 것입니다.

제어판으로 가서 프로그램 제거 또는 변경으로 이동합니다.

설치된 프로그램 목록 중에 Python 3.10.6 (64-bit)를 더블클릭하여 삭제합니다.

삭제 완료 후 파이썬 홈페이지에서 3.9 버전으로 다운 받아 다시 설치합니다.

https://www.python.org/downloads/windows

 

Python Releases for Windows

The official home of the Python Programming Language

www.python.org

위 사이트에서 하단의 Python 3.9.13 - May 17, 2022 항목 중에

Download Windows installer (64-bit)를 클릭하여 다운로드 후 설치하시면 됩니다.

설치 과정 중에 주의하실 점은 설치 경로를 기존과 같은 C:\python 으로지정해주셔야 합니다.


만약 위의 에러가 발생하지 않으셨다면 아래와 같이 아무런 메세지도 출력되지 않고 프로텍트 생성이 완료됩니다.

폴더를 확인하면 mysite 폴더 밑에 한개의 폴더(config)와 한개의 파일(manage.py)이 생성되었을 겁니다.

 

mysite 구동하기

(myvenv) c:\projects\mysite>python manage.py runserver

마지막 두 줄만 확인하면 됩니다.

장고 서버가 http://127.0.0.1:8000/ 로 시작되었다는 것과 서버를 중지하기 위해서는 CTRL-BREAK를 입력하라는 문장입니다.

서버가 구동되었으니 웹브라우저로 접속해 봅시다.

크롬이나 엣지 같은 웬브라우저를 실행하신 후에 위에서 알려준 주소 http://127.0.0.1:8000 입력합니다.

위 페이지가 뜬다면 정상적으로 장고가 설치되고 서버가 구동된 것입니다.

http://127.0.0.1:8000 대신 http://localhost:8000 으로 입력해도 동일한 결과를 볼 수 있습니다.

두 주소 모두 다 내 PC를 가리키는 것입니다.

반응형

댓글