가상환경 사용하여 새 프로젝트 생성하기
가상환경과 장고설치부터 프로젝트 생성과 앱 생성까지
이 글은 Djangogirls tutorials를 보고 공부한 내용을 바탕으로, 응용하여 작성하였습니다.
목차
1. 디렉터리 생성
2. 가상환경 생성 및 실행과 종료
3. Django 설치
4. Django Project(프로젝트 생성)
5. Django App(앱 생성)
6. settings.py 설정
1 디렉터리 생성
가상환경과 Django프로젝트를 생성할 디렉터리를 새로 만들어주고, 생성한 디렉터리로 이동합니다.
# mkdir dirname
# cd dirname
$ mkdir server
$ cd server
저는 디렉터리명을 'server'라고 정했습니다.
2 가상환경 생성 및 실행과 종료
공백없고, 소문자인 이름을 가진 가상환경을 생성합니다.
# python3 -m venv venvname
$ python3 -m venv myvenv
저는 가상환경의 이름을 myvenv라고 정했습니다.
아래 명령어를 통해 가상환경을 실행 및 종료할 수 있습니다.
# 실행
# source venvname/bin/activate
$ source myvenv/bin/activate
#종료
$ deactivate
여기서는 종료하지 마시고, 실행해주세요!
# (venvname) $
(myvenv) $
위와 같이 콘솔의 프롬프트 앞에 생성한 가상환경 이름이 접두어로 붙어있게 됩니다.
3 Django 설치
아래의 명령어를 통해 Django 설치에 필요한 pip의 버전이 최신 버전인지 확인합니다.
$ python3 -m pip install --upgrade pip
Django를 설치합니다.
$ pip install django
#원하는 버전이 있을 경우
$ pip install django ~= 2.0.0
22.03.17일 현재 공식버전은 4.0.3입니다.
4 Django 프로젝트 생성
1번 과정에서 만든 디렉터리(현재 디렉터리)에 프로젝트를 설치해주기 위해, 명령어 끝에 .을 입력해줘야합니다.
그렇지 않으면, Django는 새로운 디렉터리를 만들고 그 안에 프로젝트를 생성하는데, 이 때 새로운 디렉터리명과 프로젝트명이 동일하기 때문에 혼동이 생길 수 있습니다.
그렇기때문에 .을 꼭 기억하시고 명령어에 입력해주셔야 합니다!
# django-admin startproject projectname .
$ django-admin startproject backend .
디렉터리 구조를 보고 싶으시면 아래 명령어를 통해 보실 수 있습니다.
# tree -L treelevel
$ tree -L 2
$ tree -L 1
아래 명령어를 통해 서버를 실행합니다.
$ python manage.py runserver
❗️python3대신 python을 써도 되는 이유 알고 계시나요?
가상환경에서 작업을 할 때, python은 자동으로 올바른 버전을 참조합니다.
서버 실행 후, 아래의 주소로 이동하여 정상으로 작동하는지 확인합니다.
http://127.0.0.1:8000/
5 Django 프로젝트 앱 생성
# python manage.py startapp appname
$ python manage.py startapp zikime
저는 zikime라는 이름을 가진 앱을 생성했습니다.
6 settings.py 설정
프로젝트 생성 후, 설정해야 하는 부분
#project/settins.py
TIME_ZONE = 'Asia/Seoul'
STATIC_URL = '/static/' #여기 아래에
STATIC_ROOT = os.path.join(BASE_DIR, 'static') #추가
앱 생성 후, 설정해야 하는 부분
#project/settins.py
#INSTALL_APPS = [
# 'django.contrib.admin',
# 'django.contrib.auth',
# 'django.contrib.contenttypes',
# ....
# 'appname', #앱추가
# ]
INSTALL_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
....
'zikime', #앱추가
]
우리 모두 파이팅😊
'프레임워크(Framework) > Django' 카테고리의 다른 글
[Django] on_delete 옵션 (0) | 2022.09.20 |
---|---|
[Django/Field]null vs blank (0) | 2022.09.20 |
[Django] Django 설치 및 프로젝트 생성 (0) | 2022.09.20 |
[Django|Postgre]postgreSQL설치 및 연동 (0) | 2021.12.06 |
[Django] 프로젝트 이름 변경 (0) | 2021.11.19 |