1. SECRET_KET, DATABASE정보 숨김(필수)
깃허브에 업로드를 하게되면 여러가지 보안관련 문제가 생길수 있기때문에 위의 2가지는 깃허브에 올리기전 따로 빼서 저장을 해줘야합니다. 방법은 여러가지가 있는데 제가 자주사용하는 방법으로 알려드리겠습니다.
프로젝트 폴더에 my_settings.py를 생성해줍니다. 여기서 my_settings는 임의의 이름으로 다른 이름으로 변경해주셔도 무방합니다.
-프로젝트폴더/my_settings.py
MY_SECRET = {
"SECRET_KEY" : "settings.py 내부의 secret키"
}
MY_DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '프로젝트명',
'USER': 'root',
'PASSWORD': 'mysql비밀번호',
'HOST': 'localhost',
'PORT': '3306',
}
}
여기서 MY_SECRET, MY_DATABASES도 임의의 이름이므로 다른 이름으로 변경해주셔도 됩니다.
장고는 기본 database가 splite3로 설정되어있어 sqlite3를 계속 사용하실분들은 따로 설정을 하지 않으셔도 되지만 mysql이나 postgresql등 다른 database를 사용하실 분들은 반드시!! 설정해주셔야 합니다!!!!!x100
-프로젝트폴더/settings.py
from .my_settings import MY_SECRET, MY_DATABASES
SECRET_KEY = MY_SECRET['SECRET_KEY']
DATABASES = MY_DATABASES
이후엔 위와 같이 바꿔주시면 됩니다.
이제 깃허브에 올릴때 my_settings.py가 push되면 안되니 .gitignore파일에 가서 my_settings.py를 추가하신후 저장하고 gitpush를하면 중요정보들이 가려져서 가는것을 알수 있게 됩니다! 끝입니다!!
2. INSTALLED_APPS관련(선택)
사실 이부분은 필수가 아닌 선택의 영역인데 혼자서 간단한 프로젝트를 만드실땐 물론 상관은 없겠지만 이후 큰 프로젝트를 하거나 관련 라이브러리를 설치하게 되면 수없이 많은 것들을 추가하게 될텐데 나중가면 너무 복잡해져서 어떤걸 설치했는지 헷갈리게 됩니다. 그래서 처음부터 이걸 분리하면 편합니다.
-settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app1',
'app2',
'app3',
'
'
'
]
계속해서 추가할경우 위와 같이 될텐데 이걸 분리하는 저만의 방식은
DJANGO_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
PROJECT_APPS = [
'startapp1',
'startapp2',
'startapp3',
]
THIRD_PARTY_APPS = [
'설치 라이브러리1',
'설치 라이브러리2',
]
INSTALLED_APPS = DJANGO_APPS + PROJECT_APPS + THIRD_PARTY_APPS
위와같이 변경해주면 매우 편합니다. 주석을 사용한 방식도 해봤지만 지금까지는 위의 방식이 가장편하다고 느끼고 있습니다!
3. timezone설정(선택)
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'Asia/Seoul'
원래는 TIME_ZONE이 UTC로 설정되어있을텐데 본인이 다른나라에 있지 않은이상 왠만하면 Asia/Seoul로 설정을 해주시고 LANGUAGE_CODE같은경우는 한국어로 보고싶으면 ko-kr로 하시면 되지만 저같은경우 영어는 못하더라도 장고에서는 영어가 익숙해서 en-us(기본값)로 설정해놨습니다!
'기술 > Django' 카테고리의 다른 글
drf TDD 적용하기 (0) | 2022.01.31 |
---|---|
drf nginx gunicorn https적용하기(react-drf certbot) (1) | 2021.12.15 |
django 커뮤니티 만들기-(9)python anywhere배포 (0) | 2021.06.03 |
django 커뮤니티 만들기-(8)댓글 (0) | 2021.06.01 |
django 커뮤니티 만들기-(7)태그 (0) | 2021.06.01 |