Django App이란 무엇일까???

2021. 12. 24. 13:49강의 정리/Django 기초

반응형

출처 : https://www.inflearn.com/course/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EC%9E%A5%EA%B3%A0-%EC%9B%B9%EC%84%9C%EB%B9%84%EC%8A%A4/dashboard

 

장고(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 및 기타 다른 파일들을 저장하고 있다가, 이들 페이지나 파일들에 대한 이어지는 요구들을 (그때마다 인터넷에 가서 찾지 않더라도) 쉽게 만족시켜줄 수 있도록 하기 위한 서버이다. 캐시서버는 사용자들이 요구하는 정보를 더 빠르게 제공할 뿐 아니라, 인터넷의 트래픽을 획기적으로 줄여준다.
 

[텀즈] traffic ; 트래픽

[텀즈] traffic ; 트래픽 traffic ; 트래픽 트래픽이란 어떤 통신장치나 시스템에 걸리는 부하(負荷)를 말한다. 트래픽은 매우 일반적인 용어이기 때문에, 이외에도 네트웍을 통해 움직이는 데이터

www.terms.co.kr

 

 

Django 앱이 왜 필요한가?

  • 현재 프로젝트의 블로그 기능을 다른 프로젝트에서 사용하기 위해서 필요하다.
  • 만든 기능을 또 다시 만드는 번거로움을 없애기 위해서 필요하다.
  • python manage.py startapp <앱 이름>

 

 

위의 명령어를 시행할 때 생기는 폴더및 파일들

 

 

urls.py는 직접 생성 해주어야 하고 아래의 코드를 적으면 기본 구성이 완료된다.

urlpatterns = [
    
]

 

 

Django 앱은

  • 재사용성을 목적으로한 파이썬 패키지이다.
  • 앱을 하나의 작은 서비스로 보아도 된다.
  • 하나의 앱 이름은 현재 프로젝트 상에서 유일해야한다.
  • 새롭게 생성한 장고앱이나 외부 라이브러리 형태의 장고앱은 !!반드시!! settings.INSTALLED_APPS 에 등록을 시켜주어야만 장고앱으로써 대접을 받는다.

 

 

Django 데이터베이스 변경 사항 반영

  • python manage.py makemigrations # 디렉토리 하위에 마이그레이션 파일들 생성
  • python manage.py migrate # 데이터 베이스에 테이블을 만들어줌

 

 

Django 기본 설정 및 명령어들

 

Django로 북마크 웹사이트, 북마크 앱만들기! #2

Bookmark 앱 참고 웹사이트 https://dlsdn73.tistory.com/1167 https://velog.io/@anjaekk/python%EC%A...

blog.naver.com

 

 

# startapp 이후 기본 작업 순서

  1. startapp을 통해 app을 생성
  2. settings.py에 INSTALLED_APPS에 추가
  3. 새 appurls.py 생성 후 아래 코드 추가
  4. urlpatterns = [
        
    ]
  5. 프로젝트 urls.py에 path를 포함 시켜줌
  6. urlpatterns = [
        path('appname/', include('appname.urls')),
    ]

 

 

 

Dongbaek의 github 주소

https://github.com/yardyard/Django

 

 

 

 

반응형