맥에서 pyenv 가상환경을 적용할 경우
터미널에서 가상환경을 만들어 준다.(홈 디렉토리)
pyenv virtualenv [이용할 파이썬 버전(사전에 설치해놔야함)] [가상환경 이름]
장고에서 새 프로젝트(웹사이트)를 생성하기 위해서는 우선 터미널을 이용해 빈 디렉토리를 생성해준다.
django
라는 이름의 디렉토리 생성
mkdir django
1) 만들어 놓은 디렉토리로 이동한다.
cd django
2) 만들어 놓은 디렉토리에 pyenv 로컬 가상환경을 적용시킨다. 특정 디렉토리에 local
을 이용하여 가상환경을 적용할 경우 그 디렉토리의 하위 디렉토리에도 모두 같은 가상환경이 적용되게 된다.
pyenv local [가상환경 이름]
1) 가상환경안에 장고를 설치한다.(2.2 버전 설치할 경우)
pip install django==2.2
2) 해당 디렉토리 안에서 다음의 명령어를 실행하여 버전이 잘 출력되지 않는다면 장고를 다시 설치해야함으로 확인하고 넘어가자.
django-admin --version
여기서 django-admin
은 관리작업을 위한 명령 유틸리티로서 아래 프로젝트 생성시 자동으로 생성되는 manage.py
와 같은 역할을 한다. 하지만 manage.py
가 더 기능이 많다고 보면 되는데, 예를 들어 DJANGO_SETTINGS_MODULE
환경변수를 사용할때 --settings=config.settings.local
옵션 없이 바로 python manage.py runserver
를 실행할 수 있다.
자세한 사항은 django-admin및 manage.py를 확인해보자.
1) 해당 디렉토리에서 다음의 명령어 입력.
django-admin startproject [프로젝트 이름]
2) 디렉토리 생성 확인을 위해 ls
를 입력하고 프로젝트 디렉토리의 이름이 잘 출력된다면 생성 완료.
ls
3) 해당 디렉토리 안에 프로젝트 파일들이 자동으로 생성된 것을 확인 할 수 있다.
__init__.py
, settings.py
, urls.py
, wsgi.py
, manage.py
앱은 웹서비스 전체에서 하나의 기능으로 친절한 장고는 앱을 만든다고 명령만 해주면 하위 폴더까지 생성해준다.
1) 우선 생성했던 디렉토리 안으로 들어간다.
cd [생성했던 디렉토리 이름]
2) 앱 생성을 위한 명령어를 입력한다.
python manage.py startapp [앱 이름]
Django에서 새로 앱을 생성하게 되면 상위 디렉토리 안 settings.py
에 이 사실을 저장해 놔야한다.
1) 터미널에서 다음의 명령어를 통해 해당 디렉토리의 vscode로 이동하자.
code .
2) 프로젝트 디렉토리 안 settings.py
에 들어가서 33번째 줄(처음 생성 가정 하)에 있는 INSTALLED_APPS
에 생성한 앱을 추가해준다.
만약 새로 만든 앱 이름이 hamster
라면 아래와 같이 추가해준다.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'hamster'
]