Django/프로젝트 - 커뮤니티 사이트

[파이썬, Django] 1. 장고 초기 환경설정(가상환경, 프로젝트, 앱 생성)

Codest 2022. 2. 27. 17:44

안녕하세요 Codest 입니다 !

오늘은 장고 초기 환경설정에 대해 알아보겠습니다.

 

개발 환경

Python 3.8.8

Anaconda 4.10.1

Ubuntu 20.04 (Linux Terminal)

 

Django란?

Django는 웹 애플리케이션을 만드는 과정을 단순화시켜주는 웹 개발 프레임 워크입니다. Django를 사용하면 인증 및 권한 부여, HTML 템플릿 생성, 정적 파일 처리, 데이터베이스와 상호 작용 및 CRUD 작업 수행을 쉽게 처리할 수 ​​있습니다.

 

가상 환경이 필요한 이유

프로젝트마다 파이썬 버전이나 패키지 버전이 다를 수 있기 때문에 프로젝트 간에 충돌이 일어나지 않도록 독립된 환경을 조성해 주는 것입니다.

 

Anaconda 가상 환경 활성화가 안되시는 분들은 제 글을 참고해주세요.

[Error] conda : command not found 에러 해결법

 

[Error] conda : command not found 에러 해결법 (아나콘다 설치 오류)

에러 Ubuntu 환경 내에 올바르게 Anaconda를 설치했음에도 불구하고 conda : command not found라는 에러가 떴고 Anaconda 관련된 모든 명령어가 실행되지 않았습니다. 이는 아나콘다 설치 폴더가 환경변수에

codest.tistory.com

 

가상 환경 생성

Window Terminal 환경이라면 Anaconda Prompt 창에서 진행하시고

Linux Terminal 환경이라면 Ubuntu 창에서 진행하시면 됩니다.

가상 환경의 이름과 python 버전을 설정해줍니다.

 

# Ubuntu terminal
~$ conda create -n 가상환경이름 python=버전

 

저는 myenv라고 이름을 정하고 python 버전은 3.8.8으로 생성하였습니다.

생성이 완료되었다면 자신이 만든 가상 환경이 제대로 생성되었는지 확인합니다.

 

# Ubuntu terminal
~$ conda env list

 

가상환경 리스트

가상 환경 자동 활성화

VS code 왼쪽 하단 설정 버튼을 클릭 후 Command Palette 클릭 (단축키 Ctrl + Shift + P)

Python : Select Interpreter를 클릭하셔서 가상 환경을 선택하시면 터미널 실행할 때마다

자동적으로 가상 환경이 설정됩니다.

 

Python : Select Interpreter

 

터미널 창을 껐다 켜면 자동으로 가상 환경이 활성화되는 것을 볼 수 있습니다.

 

Terminal 창 가상환경 자동 활성화

 

 

Django 설치

들어가기에 앞서 가상 환경이 제대로 활성화되어있는지 확인하고 진행해주시기 바랍니다.

명령어를 통해 django를 설치해줍니다. 버전을 따로 설정하지 않는다면 자동으로 최신 버전으로 다운로드됩니다.

 

# terminal
$ pip install django

 

 

장고 설치 화면

 

프로젝트 생성

설치가 완료되었다면 프로젝트를 생성해줍니다.

django-admin startproject 프로젝트이름 .

프로젝트 이름 후에 반드시 한 칸 띄고. 을 붙여야 합니다!

 

앱 생성

다음 명령어를 통해 앱을 생성해줍니다.

python manage.py startapp 앱 이름

 

main(앱 이름)이라는 앱 안에 admin.py models.py views.py

siteproject(프로젝트 이름)라는 프로젝트 안에 settings.py urls.py

그리고 맨 아래에 manage.py 까지 정상적으로 생성이 되었다면 잘 따라오셨습니다.

 

프로젝트와 앱 생성 화면

 

app을 생성한 후에는 반드시 settings.py에 들어가서 INSTALLED_APPS 부분에 앱 이름을 추가해줍니다.

 

# siteproject/settings.py

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'main',
]

 

밑으로 스크롤을 내려 서버시간과 언어를 설정해줍니다.

 

# siteproject/settings.py

LANGUAGE_CODE = 'ko-kr'
TIME_ZONE = 'Asia/Seoul'

 

서버 구동하기

서버를 구동하기 전에 변경사항을 DB에 저장하는 마이그레이션을 진행해줍니다.

마이그레이션은 매우 중요한 작업이므로 추후에 model 생성하는 부분에서 자세히 다루겠습니다.

 

# terminal
$ python manage.py migrate

 

마이그레이션

 

다음 명령어를 통해 서버를 구동시킵니다.

 

# terminal
$ python manage.py runserver

 

 

이때 http://127.0.0.1:8000/ 는 서버의 기본 주소 값입니다. 이를 Ctrl + 마우스 왼쪽 버튼으로 클릭하면 정상적으로 설치되었다는 장고 페이지를 볼 수 있습니다. 아직 메인 페이지를 만들지 않았기 때문에 장고 기본 화면만 출력됩니다.

 

 

 

다음 시간에는 메인 페이지를 생성하고 url을 연결해주는 작업을 진행해보겠습니다.

 

반응형