* 프로젝트 생성
별도로 경로 지정 안하면 하위 폴더를 루트로 사용함
https://learn.microsoft.com/ko-kr/training/modules/django-get-started/5-exercise-first-project
* 사이트와 앱
메인 사이트의 자식으로 앱 폴더가 위치할거 같지만
실제로는 메인 사이트와 여러 앱이 동일 경로에 위치
개념적으로는 사이트 안에 설문조사 앱, 고객센터 앱 등으로 사용
* 뷰
용어는 뷰인데 실제로는 컨트롤러
뷰에서 HTML을 직접 심기도 가능하지만
일반적으로 모델과 템플릿 중간에서 중재하는 역할
* URL
루트에서 바로 처리 가능하긴 한데
앱으로 보낸 후 앱에서 처리하도록 하는 것이 관리적으로 용이 (앱이 늘어날 수 있으므로)
실제 주소 대신 변수 패턴으로 작성하는 것을 권장
* 데이터베이스
ORM 기능이 내장되어 있는데
명령어를 두번 날려야 함
적용 준비 (SQL 전송하는 파이썬 코드 생성)
python manage.py makemigrations
준비된 파이썬 코드 실행
python manage.py migrate
* 템플릿 폴더
템플릿 폴더명 하위에 동일명 앱 폴더 만들고(static도 마찬가지)
다시 그 아래에 html 파일을 만드는게 좋다
내부 검색시 같은 이름을 가진 폴더부터 검색하므로
* 헤더, 푸터
관례적으로 base.html 파일명 사용
* 함수 기반 뷰도 갠찮다
https://spookylukey.github.io/django-views-the-right-way
* 내장 웹서버
배포용으로 만들어진게 아님
실 서비스는 새로 추가 필요 (ex. gunicorn+nginx)
이때 collectstatic 작업 필요
* 단일 서버에서의 도커 nginx는 별로다?
https://miikanissi.com/blog/deploy-django-web-app-with-postgres-nginx-gunicorn
---
참고
https://dailyheumsi.tistory.com/21
https://jake-seo-dev.tistory.com/400
'Python' 카테고리의 다른 글
판다스 치트시트 (0) | 2023.04.27 |
---|---|
비동기로 웹크롤링 (0) | 2023.04.01 |
pandas - 데이터프레임 변동 체크 (0) | 2023.01.26 |
pandas - 특정 문구 포함된 행 삭제 (0) | 2023.01.25 |
matplotlib 한글 표시 (0) | 2023.01.18 |