[Django] 요청과 응답

완수·2021년 10월 18일
0

[Django]

목록 보기
3/8
post-thumbnail

요청과 응답

  1. app 내의 templates 폴더 안에 html 파일을 만든 후
  2. views.py에 app 내에서 html이 어떻게 처리될지 정하는 함수를 만들고,
  3. url로 요청을 받아 urls.py에서 해당 html 파일과 연결하는 과정을 거침

urls: HTTP 요청(request)을 알맞은 view로 전달

  • urls.py
  • request: HTTP 요청이 보내졌을 때 Django가 만든 객체
    - request.GET 을 통해 request의 정보를 dict 형 데이터로 얻을 수 있다.

views: HTTP 요청을 수신하고 응답을 반환하는 함수 작성

  • views.py
  • model을 통해 요청에 맞는 함수 접근
  • template에게 http 응답 서식을 맡김

templates: 실제 내용을 보여주는데 사용되는 파일

  • 파일의 구조나 레이아웃 정의
  • template 파일 경로의 기본값 = app 폴더 안의 templates 폴더
  • 여러개의 html 파일이 존재할 수 있기 때문에 templates 디렉토리를 만들고 이 안에 담아주어야 함.

URL 설계하기

해당 url로 접근 시 views.py 안의 함수를 실행시키고 그 함수의 의해 templates 안의 html 파일을 화면에 보여주게 됨

  • urls.py에서 설계
  • 웹 애플리케이션은 URL을 통한 클라이언트의 요청에서부터 시작된다.

Variable Routing

: URL의 일부를 변수로 지정하여 view 함수의 인자로 넘길 수 있음

  • 변수 값에 따라 하나의 path()에 여러 페이지를 연결시킬 수 있다.

App URL mapping

: App의 view 함수가 많아지면서 사용하는 path() 또한 많아지고, app 또한 더 많이 작성되기 때문에 유지보수에 비효율적

  • 때문에 각 app에 urls.py를 만들어 app별로 관리
  • 프로젝트 urls.py에서 각 앱의 urls.py 파일로 URL 매핑을 위탁

Naming URL patterns

: 링크에 url을 직접 작성하는 것이 아니라 path()함수의 name 인자를 정의해 사용

  • URL 설정에 정의된 특정 경로들의 의존성을 제거할 수 있음
profile
병아리 개발자의 공부 노트 🐣

0개의 댓글