TIL-037 | 꾸며줘 홈즈 project(1)_초기 세팅
🌈 "집 꾸미기" 클론 코딩 프로젝트를 시작하면서 Django 초기 세팅을 진행하였다.
Django 초기 세팅
1. 가상환경 설정 및 Django 설치
- miniconda 를 사용하여 "homes"라는 가상환경을 생성하였다.
- python version은 3.8로 설정.
$ conda create -n homes python=3.8
$ conda activate homes
- Django를 설치 하고, 프로젝트를 생성하여 준다.
- 프로젝트 생성시 끝에 . 을 붙여주어 디렉토리가 추가 생성되는 것을 방지한다.
$ pip install django
$ django-admin startproject homes .
2. Database 생성
-
데이터베이스를 생성하기에 앞서 mysqlclient를 설치한다.
$ pip install mysqlclient
-
mySQL에 로그인하여 homes DB를 생성한다.
$ mysql -u root -p
$ mysql> create database homes character set utf8mb4 collate utf8mb4_general_ci;
3. Django 설정
👉 settings.py
-
모든 IP의 접근을 허용하도록 설정을 변경한다.
ALLOWED_HOSTS = ['
*
'] -
corsheaders 설치
$ pip install django-cors-headers
-
corsheaders 설치 후 INSTALLED_APPS & MIDDLEWARE 설정
INSTALLED_APPS = [ # 'django.contrib.admin', # 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'corsheaders', 'core', 'users', 'products', 'orders', 'carts', ] MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', # 'django.middleware.csrf.CsrfViewMiddleware', # 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'corsheaders.middleware.CorsMiddleware', ]
-
setting.py의 최하단부에 CORS설정 추가 한다.
CORS_ORIGIN_ALLOW_ALL=True CORS_ALLOW_CREDENTIALS = True CORS_ALLOW_METHODS = ( 'DELETE', 'GET', 'OPTIONS', 'PATCH', 'POST', 'PUT', ) CORS_ALLOW_HEADERS = ( 'accept', 'accept-encoding', 'authorization', 'content-type', 'dnt', 'origin', 'user-agent', 'x-csrftoken', 'x-requested-with', )
👉 my_settings.py
- my_setting.py를 생성하여 아래와 같이 세팅한다.
DATABASES = { 'default' : { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'homes, 'USER': 'root, 'PASSWORD': mySQL 비밀번호, 'HOST': '127.0.0.1', 'PORT': '3306', 'OPTIONS': {'charset': 'utf8mb4'} } } SECRET_KEY = [SECRET_KEY] ALGORITHM = 'HS256'
-
my_settings 파일을 settings.py 에 import 한다.
from pathlib import Path from my_settings import DATABASES, SECRET_KEY, ALGORITHM
SECRET_KEY = SECRET_KEY
DATABASES = DATABASES
ALGORITHM = ALGORITHM
👉 .gitignore
-
manage.py와 같은 계층에 .gitignore 파일을 생성한다.
-
"https://www.toptal.com/developers/gitignore" 에서 python, pycharm, VisualStudioCode, vim, macOS, Linux, zsh 등을 생성하여 gitingore 파일에 붙여넣기 한다.
-
my_setting.py 파일 또한 .gitignore에 추가한다.
✅ 서버를 작동하여 초기 세팅에 문제가 없는지 확인한다.
$ python manage.py runserver
4. requirements.txt
-
Project를 진행하며 환경설정을 위해 설치한 모든 프로그램들을 requirements.txt에 작성한다.
-
프로그램 설치할때 자동으로 설치되는 추가 프로그램들은 명시하지 않도록 한다.
$ pip freeze 👉 설치된 프로그램들을 확인하는 명령어
-
아래와 같이 작성하도록 한다.
Django==3.2.4
django-cors-headers==3.7.0
mysqlclient==2.0.3
bcrypt==3.2.0
jwt==1.3.1
PyJWT==2.3.0
Author And Source
이 문제에 관하여(TIL-037 | 꾸며줘 홈즈 project(1)_초기 세팅), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@lck0827/TIL-037-꾸며줘-홈즈-project1초기-세팅저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)