Project Guideline Part1.(초기세팅)

Woo Hwukjun·2020년 12월 13일
0
post-thumbnail
  1. 가상환경 생성
    conda create -n westagram python=3.9
  1. 가상환경 활성화
    conda activate westagram
  1. 필수 패키지 설치
  • pip install django
    설치된 파일들 확인할때 (pip freeze, pip list)
    django-admin startproject project_westagram
  • pip install django-cors-headers 설치
    -> CORS 헤더를 추가하면 다른 도메인에서 리소스에 액세스 할 수 있습니다. 의도하지 않게 사이트의 개인 데이터를 다른 사람에게 공개 할 수 있으므로 헤더를 추가하기 전에확인을 해야한다
  • pip install mysqlclient - MySql 연동

git 설정
프로젝트 repository 가 생성되어 있기 때문에, django 프로젝트가 생성될 디렉토리와 연결만시키면된다.

echo "# 15-1st-DMFriends-backend" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/wecode-bootcamp-korea/15-1st-Youngchapedia-backend.git
git push -u origin main
  1. my_settings.py를 manage.py있는 폴더에 저장한다.
DATABASES = {
  'default': {
    'ENGINE'    : 'django.db.backends.mysql',
    'NAME'      : 'westagram',
    'USER'      : 'root',
    'PASSWORD'  : 'password',
    'HOST'      : '127.0.0.1',
    'PORT'      : '3306'
  }
}
SECRET_KEY = 'nchn-iur&ar6)@jj_h5o^aazex%)5y*q9$h766=lys^xk)p*q#'
  1. 프로젝트에 세팅을 열어준다.
    python manage.py startproject dmfriends . 설치 (앞에 점을 설치해야 그위치에서 설치를한다.)
from pathlib import Path
from my_settings import DATABASES, SECRET_KEY
SECRET_KEY = SECRET_KEY #my_settings에 저장되있는 pw
Allowed_hosts = ['*']
INSTALLED_APPS라는 속성에서 django.contirb.admin과 django.contrib.auth는 사용하지 않습니다(1st and 2nd)
app에 추가 'corsheaders', 'user'
MIDDLEWARE에서도 csrf관련 요소와 auth관련 요소를 주석처리 해주세요.(4th and 5th) 
middleware에 추가 'corsheaders.middleware.CorsMiddleware'
DATABASES = DATABASES
##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',
)
  1. python manage.py startapp user 앱 설치
  1. .gitignore 작성
  • .gitignore 란 git repository 에 commit을 할 때 특정한 파일 혹은 디렉토리에 대해 추적하지 못하게하는 설정 예를들어 my_settings.py 보안때문에
  • 작성은 gitignore.io 에서 pycharm, vscode 등 키워드를 입력하면 자동으로 내용을 작성해주는 웹 프로그램을 사용했습니다.
  1. requirements.txt
pip freeze > requirements.txt
# requirements.txt
asgiref==3.3.1
certifi==2020.12.5
Django==3.1.4
django-cors-headers==3.6.0
mysqlclient==2.0.2
pytz==2020.4
sqlparse==0.4.1
  1. project 생성하고 urls.py
from django.contrib import admin ----- [remove]
urlpatterns = [
    path('admin/', admin.site.urls), - [remove]
]
  1. app에 들어가 모델링 해야한다.
profile
미래 개발자

0개의 댓글