- 라이브러리를 설치하고, 앱을 등록하면 사용 가능
admin
: 장고 프로젝트의 모델 데이터를 관리하기 위한 강력한 웹 인터페이스를 제공
auth
: 장고 인증의 중심, 사용자 인증과 권한 부여 기능을 제공
웹 서비스 기본 구조

장고 기본 구조

이미지 출처 : https://velog.io/@cis07385/%EC%9E%A5%EA%B3%A0-%EA%B8%B0%EB%B3%B8-%EA%B5%AC%EC%A1%B0-%EB%B0%8F-%EC%9D%B4%ED%95%B4
장고 핵심 기능 리뷰
view
- Http 요청을 처리하는 함수나 클래스, 요청을 받아 처리하고 응답을 반환
model
- python 코드로 SQL을 자동 생성/수행, 하나의 코드로 PostgreSQL, MySQL, MariaDB, Oracle 등을 지원, 데이터베이스와 애플리케이션 간의 추상화를 제공
migration
- DB 스키마의 변경을 쉽게 관리해줌, 모델 코드만으로 변경내역을 파악해서 데이터베이스에 반영할 수 있도록 도움
- 생성/수정 HTML 입력 폼을 자동 생성, 사용자의 입력값에 유효성 검사를 수행, 유효한 데이터를 메서드 호출만드로 DB에 저장 가능(boostrap 라이브러리 등 편리하게 css 적용 가능)
template
- 복잡한 문자열 조합 작업을 간소화, 주로 HTML을 생성하는데 사용
인증과 권한
- auth 장고 기본 앱을 통한 강력한 인증과 권한 지원
유저/그룹/권한 모델
- 강력한 인증과 권한 관리 기능 제공, 세밀하게 권한을 관리할 수 있음 (permissions, groups)
View에서의 권한 체크
관리자
- 장고 기본 앱 : is_staff 플래그가 설정된 유저만 접속 가능
- Admin별로 커스터마이징 가능
이메일 발송 지원
로깅
- 다양한 경로에 로그 메세지를 출력할 수 있음, 디버깅과 모니터링에 유용함
파일 스토리지 API
- 단일 API로 AWS, S3, FTP 상의 파일을 로컬 파일처럼 관리하도록 도움
메시지 프레임워크
- 사용자에게 일회성 메세지를 표시하는 기능을 제공
캐싱
- Memcached, Redis 파일 등 다양한 캐시 백엔드를 지원, 다양한 캐싱 전략을 구현할 수 있음
- 매번 같은 컨텐츠를 응답할 경우, 캐싱을 활용하면 자원 절약 가능
세션
- 사용자의 상태를 서버에 임시로 저장 가능, 로그인을 유지하기 위한 필수 기술