Framework/Django

Django Template Engine은 무엇이고 어떤 기능을 제공합니까?

JM Lee 2023. 12. 18. 03:06
728x90

Django Template Engine은 Django 웹 프레임워크의 일부로서, 동적 웹 페이지를 생성하기 위해 사용되는 도구입니다.

 

Template Engine은 템플릿 파일을 사용하여 데이터와 로직을 결합한 후, HTML 또는 다른 텍스트 기반 출력물을 생성합니다. 이를 통해 웹 애플리케이션의 프론트엔드와 백엔드 사이에 유연한 계층을 제공하며, 개발자와 디자이너간의 협업을 용이하게 합니다.

 

Django Template Engine의 주요 기능은 다음과 같습니다.

  1. 변수 치환: 템플릿에서는 중괄호 {{ }} 안에 변수를 넣어 표시할 수 있으며, 이 변수는 런타임에 해당 변수의 값을 치환하여 출력합니다.
  2. 태그: Django 템플릿은 다양한 기능을 제공하는 태그를 사용하여 템플릿 로직을 수행할 수 있습니다. 태그는 중괄호와 퍼센트 기호 {% %} 안에성되며, 조건문, 반복문, 변수 할당 등 다양한 작업을 수행합니다.
  3. 필터: 필터는 변수의 출력 형식을 변경하는 데 사용되며, 파이프 기호 `` 다음에 필터 이름을 붙여 사용합니다. 예를 들어 날짜 형식을 변경하거나, 텍스트를 대문자 변환하는 것이 가능합니다.
  4. 상속: Django 템플릿은 상속을 통해 중복 코드를 줄이고 템플릿의 일관성을 유지할 수 있습니다. 상속을 사용하려면 기본 템플릿에% extends 'base.html' %}와 같은 방식으로 상속할 템플릿을 지정하고, 블록 태그 {% block}`를 사용하여장될 영역을 정의해야 합니다.
  5. 인클루드: Django 템플릿에서 다른 템플릿의 일부분을 포함시키려면, 인클루드 태그 {% include 'example.html' %}를 사용하여 템플릿 파일을 참조할 수 있습니다. 이를 통해 코드 재사용성을 높이고 유지 관리를 용이하게 할 수 있습니다.

Django Template Engine은 개발자에게 유연한 웹 페이지 구축을 돕지만, 더 복잡한 웹 애플리케이션에 대해서는 다른 프론트엔드 프레임워크와의 결합이 필요할 수 있습니다. 이 경우에는 Django REST 프레임워크와 같은 백엔드 API 솔루션을 사용하고, Angular, React, Vue와 같은 프론트엔드 프레임워크와 결합할 수 있습니다.

 

작동 순서

  1. 서버가 클라이언트 요청을 받음
  2. 필요한 데이터를 가져옴
  3. 미리 정의된 template에 해당 데이터를 적절하게 입력함
  4. 서버에서 데이터가 반영된 template = HTML 을 그림
  5. HTML을 클라이언트에게 전달함

'Framework > Django' 카테고리의 다른 글

Django 테스트코드에서 setuptestdata, setup 함수의 차이  (0) 2024.01.01
HTTP POST 요청 시 headers 매개변수  (0) 2024.01.01
_meta  (1) 2023.12.17
ORM이란?  (0) 2023.12.16
reverse, reverse_lazy  (0) 2023.12.16