새롭게 알게 된 것은
env 관련 함수를 이용해서, 장고 세팅을 용이하게 할 수 있다는 점이었다.
LANGUAGE_CODE = env.str("LANGUAGE_CODE", default="ko-kr")
INTERNAL_IPS = env.list("INTERNAL_IPS", default=["127.0.0.1"])
env 파일에 따로 변수명을 정의하면, 손쉽게 이용 가능하다.
# Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent # 취상위폴더의 경로 BASE_DIR
# django-envirion
# 공식문서참조 : https://django-environ.readthedocs.io/en/latest/
env = environ.Env() #Env객체를 기본으로 설정
env_path = BASE_DIR / ".env" # 최상위 폴더 BASE_DIR 에 있는 .env 파일을 말한다.
if env_path.exists(): # 내용물이 있다면, 읽어온다.
with env_path.open("rt", encoding="utf8") as f:
env.read_env(f)
env_path 문서내에 컨텐츠가 있을 때, 로직을 만들어서 utf8로 인코딩 해와 읽어오는 로직이다.
단순하지만, 쏠쏠한 정보?
라이브러리 중에서도, 디버그 툴바나 장고 익스텐션은 유용했다.
장고 부트스트랩5는, 있다는 것을 알게되어 좋았으나
html,css,Vue.js를 이용해서 프론트엔드를 따로 관리할 것이기에
사실 필요가 없음.
DATABASES = {
"default": env.db("DATABASE_URL", default=f"sqlite:///{BASE_DIR/'db.sqlite3'}"),
}
데이터베이스 설정도 env 파일에서 관리가 가능하다.
DEBUG = True 일때보다
DEBUG = env.bool("DEBUG", default=True) 로 설정해두는 것이
유연해보였다.
이외에 몇몇 설정들은, 참고할만 하다.
결제기능을 배우기 위해서 강의를 듣기 시작했지만,
기본 설정들이나 현직 개발자입장에서의 유용한 팁들이 너무 좋았다.
'Library&Framework > Django' 카테고리의 다른 글
[Django + React Pagination] ModelViewSet을 이용한 페이지네이션 기능 (3) | 2024.01.08 |
---|---|
파이썬/장고로 결제 시작하기 2~3주차(Feat. 아임포트) (1) | 2023.12.07 |
파이썬/장고로 결제 시작하기 (Feat. 아임포트) (3) | 2023.11.29 |
게시글 댓글을 생성하는 함수에서 왜 인자로 article_id 를 꼭 넣어줘야 할까 ?? (0) | 2023.09.20 |
[django 기초] models 모듈 안에, User 클래스와 AbstractUser는 어떤 점이 다를까?? (0) | 2023.04.25 |