Django App이란 무엇일까???
2021. 12. 24. 13:49ㆍ강의 정리/Django 기초
반응형
장고(Django)를 배우기 시작한 입문자이시거나, 또는 배우고 싶은 생각이 있으신 분은 위 출처의 강의를 적극 추천드립니다!!!
Django 주요 기능들
- Function Based Views : 함수로 HTTP 요청 처리
- Models : 데이터베이스와의 인터페이스
- Templates : 복잡한 문자열 조합을 보다 용이하게, 주로 HTML 문자열 조합 목적으로 사용하지만, 푸쉬 메세지나 이메일 내용을 만들 때에도 쓰면 편리
- Admin 기초 : 심플한 데이터베이스 레코드 관리 UI
- Logging : 다양한 경로로 메세지 로깅
- Static files : 개발 목적으로의 정적인 파일 관리
- Messages framework : 유저에게 1회성 메세지 노출 목적
- Class Based Views : 클래스로 함수 기반 뷰 만들기
- Forms : 입력폼 생성, 입력값 유효성 검사 및 DB로의 저장
- 테스팅
- 국제화 & 지역화
- 캐싱
- Geographic : DB의 Geo 기능 활용 (PostgreSQL 중심)
- Sending Emails
- Sydication Feeds (RSS / Atom)
- Sitemaps
장고 기본 구조
<=> 데이터 베이스 서버 (SQLite, MySQL etc....)
웹 브라우저 <=> Django
<=> 캐시 서버 (SQLite, MySQL etc....)
Django는
- URLconf : 미리 URL별로 호출할 함수를 리스트에 등록
- View : URL에 맟춰 호출된 함수
- Model : 파이썬 코드로 데이터 베이스와 통신
- Templates : 복잡한 문자열을 손쉽게 조합하귀 위한 문자열 렌더링 엔진
캐시 서버란?
- 캐시서버는 일반적으로 기업 내의 인터넷 사용자와 비교적 가까이 있는 서버로서, 모든 사용자들이 자주 요청할 만한 웹페이지나, FTP 및 기타 다른 파일들을 저장하고 있다가, 이들 페이지나 파일들에 대한 이어지는 요구들을 (그때마다 인터넷에 가서 찾지 않더라도) 쉽게 만족시켜줄 수 있도록 하기 위한 서버이다. 캐시서버는 사용자들이 요구하는 정보를 더 빠르게 제공할 뿐 아니라, 인터넷의 트래픽을 획기적으로 줄여준다.
Django 앱이 왜 필요한가?
- 현재 프로젝트의 블로그 기능을 다른 프로젝트에서 사용하기 위해서 필요하다.
- 만든 기능을 또 다시 만드는 번거로움을 없애기 위해서 필요하다.
- python manage.py startapp <앱 이름>
위의 명령어를 시행할 때 생기는 폴더및 파일들
urls.py는 직접 생성 해주어야 하고 아래의 코드를 적으면 기본 구성이 완료된다.
urlpatterns = [
]
Django 앱은
- 재사용성을 목적으로한 파이썬 패키지이다.
- 앱을 하나의 작은 서비스로 보아도 된다.
- 하나의 앱 이름은 현재 프로젝트 상에서 유일해야한다.
- 새롭게 생성한 장고앱이나 외부 라이브러리 형태의 장고앱은 !!반드시!! settings.INSTALLED_APPS 에 등록을 시켜주어야만 장고앱으로써 대접을 받는다.
Django 데이터베이스 변경 사항 반영
- python manage.py makemigrations # 디렉토리 하위에 마이그레이션 파일들 생성
- python manage.py migrate # 데이터 베이스에 테이블을 만들어줌
Django 기본 설정 및 명령어들
# startapp 이후 기본 작업 순서
- startapp을 통해 app을 생성
- settings.py에 INSTALLED_APPS에 추가
- 새 app에 urls.py 생성 후 아래 코드 추가
-
urlpatterns = [ ]
- 프로젝트 urls.py에 path를 포함 시켜줌
-
urlpatterns = [ path('appname/', include('appname.urls')), ]
Dongbaek의 github 주소
https://github.com/yardyard/Django
반응형
'강의 정리 > Django 기초' 카테고리의 다른 글
Django 회원 가입 이메일 보내기 (1) | 2022.02.05 |
---|---|
Django User 모델 커스텀 및 회원가입 구현 (0) | 2022.02.04 |
관계를 표현하는 모델 필드 #ManyToManyField (0) | 2022.01.03 |
동백 // Django 설치 및 프로젝트 생성 (0) | 2021.12.23 |
Django, React란 무엇일까??? (0) | 2021.12.23 |