이것은 Antonio Melé가 작성하고 Packt가 게시한 Django 5 by 예제의 코드 저장소입니다. 여기에는 책을 처음부터 끝까지 작업하는 데 필요한 모든 지원 프로젝트 파일이 포함되어 있습니다.
기술 검토자: Mark Walker
서문: 파올로 멜키오레
코드는 장 번호와 함께 디렉토리로 구성됩니다. 예를 들어 Chapter02
2장의 소스 코드가 포함되어 있습니다. 각 장 폴더에는 해당 장의 코드를 실행하는 데 필요한 모든 패키지가 포함된 requirements.txt
파일이 있습니다. pip install -r requirements.txt
명령을 사용하여 설치할 수 있습니다.
다음 명령을 사용하여 Django 개발 서버를 실행합니다.
python manage.py runserver
Docker Compose는 17장에 설명되어 있습니다. 그러나 모든 장에는 Docker Compose 구성과 관리 스크립트(@marksweb 제공)가 포함되어 있습니다.
Docker Compose를 사용하여 빌드하고 실행하는 명령:
./do.sh build ./do.sh run
명령 목록:
build [<arg>]
: Docker 이미지를 빌드합니다. 선택적 인수는 빌드할 특정 이미지를 지정할 수 있습니다.
exec [<arg>]
: 컨테이너에서 명령을 실행합니다.
compose
: Docker Compose 주변의 최소 래퍼로 올바른 구성 파일이 로드되도록 합니다.
migrate [<arg>]
: 적용되지 않은 Django 마이그레이션을 적용합니다.
makemigrations [<arg>]
: 필요한 경우 추가 인수를 지정하여 새 Django 마이그레이션을 만듭니다.
check
: Django 설정을 확인합니다.
shell
: 지정된 컨테이너(web_run)에서 bash 터미널을 엽니다.
start [<arg>]
: Django 서버와 종속 서비스를 시작합니다. 분리된 상태로 실행하려면 -d를 사용하세요.
stop [<arg>]
: Django 서버 및 종속 서비스를 중지합니다.
Django 5 by 예제 (5판)는 Django를 사용하여 전문적인 웹 애플리케이션을 개발하는 전체 과정을 안내합니다. 이 책은 프레임워크의 가장 관련성이 높은 측면을 다룰 뿐만 아니라 다른 인기 있는 기술을 Django 프로젝트에 통합하는 방법도 알려줄 것입니다.
이 책은 따라하기 쉬운 단계별 접근 방식을 사용하여 4가지 실제 애플리케이션 작성, 일반적인 문제 해결, 모범 사례 구현 과정을 안내합니다.
이 책을 읽고 나면 Django의 작동 방식과 실용적인 고급 웹 애플리케이션을 구축하는 방법을 잘 이해하게 될 것입니다.
이 책에는 Python 3.12+ 및 Django 5가 필요합니다.
이 책은 네 가지 Django 프로젝트로 나누어진 광범위한 웹 앱 개발 주제를 다룹니다.
블로그 애플리케이션 (1~3장): 완전한 블로그 애플리케이션 만들기
데이터 모델, 보기 및 URL 구축
블로그 관리 사이트 구현
모델에 표준 URL을 사용하고 게시물에 SEO 친화적인 URL을 구현하세요.
게시물 페이지 매김을 구축하고 클래스 기반 보기를 만드는 방법을 알아보세요.
독자가 이메일을 통해 게시물을 공유할 수 있도록 양식을 사용하고 모델 양식을 사용하여 댓글 시스템을 구현합니다.
django-taggit을 사용하여 게시물에 태그를 추가하고 공유 태그를 기반으로 유사한 게시물을 추천합니다.
최신 게시물과 댓글이 가장 많이 달린 게시물을 표시하려면 맞춤 템플릿 태그를 구현하세요.
마크다운을 렌더링하기 위한 사용자 정의 템플릿 필터 구현
블로그에 대한 사이트맵 및 RSS 피드 만들기
PostgreSQL을 사용하여 전체 텍스트 검색 엔진 구현
소셜 웹사이트 (4~7장): 이미지를 북마크하고 공유할 웹사이트 만들기
Django 인증 프레임워크를 사용하여 인증 구현
사용자 정의 프로필 모델로 사용자 모델 확장
Diango 메시지 프레임워크 사용
사용자 정의 인증 백엔드 구축
Python Social Auth를 사용하여 Google에서 소셜 인증(OAuth2) 구현
django-extensions를 사용하여 HTTPS를 통해 개발 서버 실행
easy-thumbnails로 이미지 썸네일 생성
모델에서 다대다 관계 구현
JavaScript와 Django를 사용하여 JavaScript 북마크릿 구축
JavaScript Fetch API 및 Django를 사용하여 비동기 HTTP 요청 추가
무한 스크롤 페이지 매김 구현
사용자 팔로우 시스템 구축
사용자 활동 스트림 생성 및 QuerySet 최적화
Django 신호 사용 방법 알아보기
관련 디버그 정보를 얻으려면 django-debug-toolbar를 사용하세요.
Redis를 사용한 이미지 조회수 계산
Redis를 사용하여 이미지 순위 구축
전자상거래 애플리케이션 (8~11장): 모든 기능을 갖춘 온라인 상점 만들기
제품 카탈로그 모델 구축
Django 세션을 사용하여 장바구니 만들기
사용자 정의 컨텍스트 프로세서 생성
고객 주문 관리
Celery 및 RabbitMQ를 사용하여 비동기 알림 보내기
꽃을 이용한 모니터 셀러리
결제 처리를 위해 Stripe 통합
Stripe로부터 결제 알림을 수신하기 위한 웹후크 구현
Django 관리 사이트에서 사용자 정의 보기 구축
관리자 작업 생성 및 CSV 파일 생성
Weasyprint를 사용하여 동적으로 PDF 송장을 생성하세요
주문에 할인을 적용하는 쿠폰 시스템 만들기
Stripe 결제와 할인 통합
Redis를 사용하여 제품 추천 엔진 구축
상점에 국제화 추가
번역 파일 생성 및 관리
Rosetta를 사용하여 번역 관리
URL 패턴 번역 및 언어 선택기 구축
django-parler를 사용하여 모델 번역
django-localflavor를 사용하여 양식 지역화
eLearning 플랫폼 (12~17장): CMS를 포함한 eLearning 플랫폼 만들기
코스 모델 구축
데이터 고정물 생성 및 사용
모델 상속을 사용하여 다형성 콘텐츠 생성
강좌 콘텐츠 주문을 위한 맞춤 모델 필드 생성
인증 뷰 구현
클래스 기반 뷰와 믹스인을 사용하여 콘텐츠 관리 시스템 구축
그룹 및 권한을 사용하여 액세스 제한
강좌 콘텐츠 관리를 위한 양식 세트 구축
JavaScript 및 Django를 사용하여 콘텐츠를 그 자리에서 재정렬하는 드래그 앤 드롭 기능 만들기
django-braces의 일반 믹스인 사용
공개 보기 및 학생 등록 보기 구현
다양한 유형의 콘텐츠를 렌더링하고 django-embed-video를 사용하세요.
캐시 프레임워크를 사용하여 콘텐츠 캐시
Memached 및 Redis 캐시 백엔드 사용
django-redisboard를 사용하여 Redis 모니터링
Django REST Framework를 사용하여 API 빌드
모델 및 사용자 정의 API 보기를 위한 직렬 변환기 만들기
API 인증 및 권한 처리
API 뷰 세트 및 라우터 구축
Python 요청을 사용하여 API 사용
Django 채널을 사용하여 실시간 채팅 서버 만들기
Django와 JavaScript를 사용하여 WebSocket 소비자/클라이언트 구현
Redis를 사용하여 채널 레이어 설정
WebSocket을 완전 비동기화로 만들기
채팅 메시지를 유지하여 채팅 기록 구현
여러 환경에 대한 설정 만들기
PostgreSQL, Redis, Nginx, uWSGI 및 Daphne과 함께 Docker Compose를 사용하여 프로덕션 환경 구성
HTTPS를 통해 프로젝트를 안전하게 제공하세요
Django 시스템 검사 프레임워크 사용
사용자 정의 미들웨어 구축
사용자 정의 관리 명령 만들기
Discord 커뮤니티 책에 가입하여 진행 중인 토론에 참여하거나 새로운 토론을 시작해 보세요. 다른 개발자들이 함께 책을 읽고 질문을 통해 서로 도움을 주는 모습을 보게 될 것입니다.
예제를 통한 Django 4
예제를 통한 Django 3
예제를 통한 Django 2
예제를 통한 장고
이 책의 5판은 다른 언어로 번역되었지만 이전 판의 번역도 찾을 수 있습니다.
중국어 간체: Django 4实例精解
폴란드어: Django 4. Praktyczne tworzenie aplikacji sieciowych. 위다니 4세
러시아어: Django 4 в примерах
브라질 포르투갈어: Aprenda Django 3 com 예시
세르보-크로아티아-보스니아어: Django 3 kroz primere, prevod III izdanja
스페인어: Django 2
이 책의 인쇄본이나 Kindle 버전을 이미 구입하신 경우 DRM이 없는 PDF 버전을 무료로 받으실 수 있습니다. 무료 PDF를 요청하려면 링크를 클릭하세요: https://packt.link/free-ebook/9781805125457
또한 이 책에 사용된 스크린샷/다이어그램의 컬러 이미지가 포함된 PDF 파일을 GraphicBundle에서 제공합니다.
Post.objects.filter(id_lt=3).count()
코드 예제는 Post.objects.filter(id__lt=3).count()
로 읽어야 합니다.