[Django]westagram 1. 초기세팅

yejin20·2020년 10월 18일
0

Django

목록 보기
1/9
post-thumbnail

1. 가상환경

1) 가상환경 생성

: 위스타그램 프로젝트를 만들 가상환경을 먼저 만들어준다.
conda create -n westagram python=3.8

  • conda : conda 가상환경 사용
  • westagram : 생성할 가상 환경의 이름
  • python=3.8 : pyhton 3.8버전 사용

2) 가상환경 활성화

: 생성한 가상환경을 활성화 시켜줘야 사용할 수 있다.

conda activate westagram

  • conda activate : 가상환경 활성화하는 명령어
  • westagram : 활성화시킬 가상 환경의 이름


2. Django

1) Django 설치

: 가상환경 안에 django를 설치하기

pip install django

2) Django 프로젝트 생성

django-admin startproject project_westagram

  • django-admin startproject : 장고 프로젝트 생성 명령어
  • project_westagram : 생성할 프로젝트의 이름


3. Django setting 하기

1) project_westagram/settings.py

  • INSTALLED_APPS에서 사용하지 않을 앱 주석처리
    : django.contrib.admin
    : django.contrib.auth

  • MIDDLEWARE에서도 사용하지 않는 것 주석처리
    : django.middleware.csrf.CsrfViewMiddleward
    : django.contrib.auth.middleware.AuthenticationMiddleware

2) 외부 접속 허용하기

(1) django설치한 가상환경 활성화 : conda activate westagram

(2) 플러그인 설치 : pip install django-cors-headers

(3) 허용할 아이피 설정하기 위해서 ALLOWED_HOSTS 추가

프로젝트 진행시 여러 아이피 주소를 허용해야하므로 *을 사용해서 모두 허용해줄 수 있다.

(4) INSTALLED_APPS와 corsheaders 추가
: corsheaders

(5) MIDDLEWARE에 corsheaders 추가
: corsheaders.middleware.CorsMiddleware

(6) CORS 관련 허용 사항 추가
: 아래 내용을 그대로 복사했다.

#REMOVE_APPEND_SLASH_WARNING
APPEND_SLASH = False        

##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',
		#만약 허용해야할 추가적인 헤더키가 있다면?(사용자정의 키) 여기에 추가하면 됩니다.
)

참고로 맨 위에있는 APPEND_SLASH 설정을 넣어주지 않았더니 url에서 에러가 발생했었다. 꼭 넣어주기!



4. app 생성, 추가

  • manage.py 파일이 있는 곳에서 app을 생성해주어야한다!

python manage.py startapp user

  • app을 생성했다면 다시 project_westagram/settings.py에서 app을 추가해주어야한다!

-> user라는 app 추가까지 완료한 세팅



5. 사용하지 않는 코드, 주석 제거

1) project_westagram/urls.py 에서 제거

project_westagram/urls.py 파일을 열어서 사용하지 않는 주석들을 제거한다.

from django.contrib import admin         # 이 부분 삭제

urlpatterns = [
    path('admin/', admin.site.urls),     # 이 부분 삭제
]

admin을 사용하지 않으므로
from django.contrib import admin와 path('admin/', admin.site.urls 모두 삭제

2) user/views.py 에서 제거

from django.shortcuts import render

render도 사용하지 않으므로 제거해준다.

profile
개(발자 어)린이입니다

0개의 댓글