Django 주요 구성 요소

CHAN LIM·2022년 6월 21일
0
post-thumbnail

Django 주요 기능들

1. Function Based Views
: 함수로 HTTP 요청을 처리합니다.
2. Models
: 데이터베이스와의 인터페이스입니다.
: ORM
3. Templates
: 복잡한 문자열 조합을 보다 용이하게 해줍니다.
: 주로 HTML 문자열 조합을 목적으로 사용하지만, push 메세지나 이메일 내용을 만들 때에도 쓰면 편리합니다.
4. Admin 기초
: 심플한 데이터베이스 레코드를 관리해주는 UI를 제공해줍니다.
: 관리자 웹페이지를 따로 제작하지 않아도 Django에서 제공하는 Admin으로 '어느정도' 관리가 가능합니다.
5. Logging
: 다양한 경로로 메세지 로깅해줍니다.
6. Messages framework
: User에게 1회성 메세지를 노출해줍니다.
7. Class Based Views
: 클래스로 함수 기반 뷰를 만들어줍니다.
8. Forms
: 입력폼을 생성해줍니다.
: 입력값 유효성 검사 및 DB로의 저장까지의 일련의 로직을 지원해줍니다.
: Validators & Fields & Widgets
: 너무 중요합니다.
9. Testing
10. 국제화 & 지역화
11. Caching (캐싱)
12. Geographic
: DB의 Geo 기능을 활용합니다. (PostgreSQL 중심)
13. Sending Emails
14. Syndication Feeds (RSS/Atom)
15. Sitemaps


Django 기본 앱

admin
admindocs
auth
contenttypes
flatpages
gis
humanize
messages
redirects
sessions
sitemaps
staticfiles
syndication


Django 기본 구조


Django 앱

현재 프로젝트의 블로그 기능을 다른 프로젝트에서도 사용한다고 하면?
-> 블로그를 Django앱 형태로 격리해서 만들어둔다면, 다른 프로젝트에도 적용하기 편리합니다.

아래 명령으로 기본 앱템플릿으로부터 생성합니다.

python manage.py startapp <앱이름>

재사용성을 목적으로 한 패키지
-> 재사용성을 목적으로 둔 것이 아니라면, 하나의 Django 앱에서 현재 프로젝트의 거의 모든 기능을 구현해도 무방합니다.
-> 앱을 하나의 작은 서비스로 보아도 무방합니다.

하나의 앱 이름은 현재 프로젝트 상에서 유일해야합니다.

새롭게 생성한 Django앱이나 외부 라이브러리 형태의 Django앱은
필히 settings.INSTALLED_APPS에 등록을 시켜줘야만 Django앱으로서 대접을 받습니다.

  • 앱의 URLConf를 제외한 많은 부분 (모델, 템플릿, static 등) 들이 자동으로 등록됩니다.

Reference

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트

profile
클라우드, 데이터, DevOps 엔지니어 지향 || 글보단 사진 지향

0개의 댓글