본문 바로가기
Python

[장고] 알아두면 좋은 내용

by 앗사비 2023. 2. 14.
728x90

* 프로젝트 생성

별도로 경로 지정 안하면 하위 폴더를 루트로 사용함

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 작업 필요

https://wikidocs.net/76905

 

* 단일 서버에서의 도커 nginx는 별로다?

https://miikanissi.com/blog/deploy-django-web-app-with-postgres-nginx-gunicorn

---

 

참고

https://dailyheumsi.tistory.com/21

https://heinafantasy.com/110

https://jake-seo-dev.tistory.com/400

 

728x90

'Python' 카테고리의 다른 글

판다스 치트시트  (0) 2023.04.27
비동기로 웹크롤링  (0) 2023.04.01
pandas - 데이터프레임 변동 체크  (0) 2023.01.26
pandas - 특정 문구 포함된 행 삭제  (0) 2023.01.25
matplotlib 한글 표시  (0) 2023.01.18