🤷 기간 : 2021.04.23 ~ 2021.04.23
🤷 자료 : https://www.notion.so/wecode/Django-C-R-U-D-1-e105b472f2cc4647a38305b343389de3
🤷 내용: Django 초기 세팅
URLconf, View, Model 중에 Model을 작성하고 ORM을 통해서 Database에 table을 만들고 데이터를 생성, 조회, 수정, 삭제하는 방법을 복습해보자 ..
- Miniconda 가상환경 설치하기
- Project에 필요한 python package 설치
**참고( https://velog.io/@shinisgood/WIL-4)
django-admin startproject westarbucks # 나중에 내부 파일과 헷깔리기 때문에 이름 바꿔줬고(westarbucks_name), 안에꺼는 바꾸면 안되고 가장 밖에꺼만 바꿔준다
manage.py
이 있는 디렉토리로 가자악 ! cd westarbucks_name
git
업로드 시 노출되지 말아야할 것을 세팅하자.(".gitignore" 설정)git
을 사용하지만 올리고 싶은것 올리고 싶지 않은것, 올려서는 안되는 것들이 존재하겠죠 ?.gitignore
을 파일을 생성해서 관리하자 ! !manage.py
파일이 있는westarbucks_name
디렉토리에 만들어야해cd westarbucks_name
touch .gitignore
vi .gitignore
.gitignore
이제 넣으면 안될 것 추가하자 ㅡ ㅡpython
, pycharm
, vscode
, vim
, macOS
, Linux
, zsh
를 각각 검색창에 추가한 다음,.gitignore
파일에 정의할 요소들을 생성 해줍니다(편하쥬?) 생성
을 눌러서 들어갑시다. !.gitignore
에 추가합니다 ! ! ! westarbucks_name/my_settings.py
도 추가하장DATABASES
), Secret Key(SECRET
))를 포함한 파일(my_settings.py
)을 따로 생성한다음 .gitignore
에 넣어버리자 ! ! !
my_settings.py
에 포함되어야 하는 (데이타베이스(DATABASES
), Secret Key(SECRET
))는 아래와 같이 생겨야한다.DATABASES = { 'default' : { 'ENGINE': 'django.db.backends.mysql', 'NAME': '20th', # mySQL 환경 이름 ? 할튼 그거 'USER': 'root', # 거의 유져는 루트다 'PASSWORD': '????', # 들어오는 비번 쳐 ! ! 'HOST': '127.0.0.1', # 옆의 숫자는무조건 내 컴퓨터를 가르키는 것임 'PORT': '3306', # mySQL 기본설정 포트 번호 } } ` SECRET = 'django-insecure-jashkdfjahssdhf' # 이 정보는 "westarbucks/settings.py"의 SECRET KEY를 찾아서 가지고 와서 써줘라 ! 엄청 김 ㅋㅎ
- 미안하지만 여기서 끝난게 아냐 ㅡ ㅡ
westarbucks/settings.py
에서DATABASES
랑SECRET
을westarbucks/my_settings.py
로 가져왔잖아 ?
- 그럼,
settings.py
를 바꿔줘야해 ㅡ ㅡ 쉽지않구먼- 근데 쉬움 ㅋㅎ, 위쪽에 먼저 이거 넣어주고 !
from my_settings import DATABASES, SECRET
# Database # https://docs.djangoproject.com/en/3.2/ref/settings/#databases ` DATABASES = DATABASES # 다 지우고 이거랑 똑같이 만들어주면 되고
# SECURITY WARNING: keep the secret key used in production secret! SECRET_KEY = SECRET # 다 지우고 이거랑 똑같이 만들어 주면 된다.
- 여기 까지 되었니 ? 결국
.gitignore
에 들어갈 정보는,
- https://www.toptal.com/developers/gitignore 여기서 긁어온거
- westarbucks_name/
my_settings.py
만 이 자체가 들어가 있음 된다 !
mySQL
서버를 실행시키자$ mysql.server start
mySQL
서버로 들어가자 ! crud1-20기 ❯ mysql -u root -p
Enter password: # 지정했던 Password 치자
create database "NAME" character set utf8mb4 collate utf8mb4_general_ci;
# 위에꺼에서 "NAME"만 바꿔 주면 된다 ~
create database 20th character set utf8mb4 collate utf8mb4_general_ci;
control
+z
로 나와이써settings.py
를 보다보면 ALLOWED_HOST
가 있는데 접근허용 관련 내용이다. 지금은 우리 프론트사람들 컴터 하나하나를 지정해줄수 없으니, 전부다 허용으로 하려한다 ! 아래와 같이 바꿔줘라 !ALLOWED_HOSTS = ['*']
INSTALLED_APPS = [
# 'django.contrib.admin', # admin 안쓸꺼야 이번엔
# 'django.contrib.auth', # 로그인 회원가입 그런 기능 안할꺼야
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'products',
]
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',
]
urlpatterns
안에는 admin
관련 내용이 있었으나 아까 안쓴다 했지 ?urlpatterns
내용 아래처럼 다 비워라. from django.urls import path
urlpatterns = [
]
westarbucks_name
디렉토리를 현재 디렉토리로 주고 startapp
하자python manage.py startapp products # products 는 App디렉토리 이름임 ~
App
을 starbucks/settings.py
에 추가해줘야함INSTALLED_APPS = [
# 'django.contrib.admin', # admin 안써요 ~
# 'django.contrib.auth', # 로그인 회원가입 그런 기능 안써요 ~
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'products', # 요기 추가했지 그냥 product 추가하면 됩니다.
]
여기까지 초기 세팅 끝 ㅡ ㅡ