파이썬 장고 템플릿 상속 활용하기: 웹사이트 일관성 유지 방법
웹 개발에서 사이트의 일관된 디자인과 레이아웃 유지는 중요한 과제 중 하나입니다. 장고의 템플릿 상속 기능은 이러한 문제를 해결하는 효과적인 방법을 제공합니다. 이 글에서는 장고 템플릿 상속의 개념과 활용 방법에 대해 알아보겠습니다.
템플릿 상속의 개념
템플릿 상속은 장고에서 웹 페이지의 공통 요소(예: 헤더, 푸터, 사이드바 등)를 재사용할 수 있게 해주는 기능입니다. 기본적으로 ‘베이스’ 템플릿을 만들고, 이를 상속받는 ‘자식’ 템플릿들에서 특정 부분만을 오버라이드(재정의)하여 사용할 수 있습니다.
베이스 템플릿 정의하기
먼저, 사이트의 모든 페이지에 공통적으로 포함될 요소를 가진 베이스 템플릿을 정의합니다. 베이스 템플릿은 일반적으로 base.html
과 같은 이름으로 저장됩니다.
<!DOCTYPE html>
<html>
<head>
<title>{% block title %}My Website{% endblock %}</title>
</head>
<body>
<header>...</header>
<nav>...</nav>
<main>
{% block content %}{% endblock %}
</main>
<footer>...</footer>
</body>
</html>
여기서 {% block %}
태그는 자식 템플릿에서 오버라이드할 수 있는 부분을 정의합니다.
자식 템플릿에서 베이스 템플릿 상속하기
베이스 템플릿을 정의한 후, 이를 상속받아 각 페이지에 특화된 템플릿을 만들 수 있습니다. 이때 {% extends 'base.html' %}
태그를 사용하여 베이스 템플릿을 상속받음을 명시합니다.
{% extends 'base.html' %}
{% block title %}Home Page{% endblock %}
{% block content %}
<h1>Welcome to My Website</h1>
<p>This is the home page.</p>
{% endblock %}
이 예시에서는 베이스 템플릿의 title
과 content
블록을 오버라이드하여 사용자에게 특정 페이지의 내용을 제공합니다.
결론
장고의 템플릿 상속 기능을 사용하면, 웹사이트의 일관성을 유지하면서도 각 페이지의 고유한 내용을 효과적으로 관리할 수 있습니다. 템플릿 상속은 장고 웹 개발의 생산성과 유지보수성을 크게 향상시키는 핵심 기능 중 하나입니다.
더 많은 정보와 고급 기능을 원하신다면, 장고 공식 문서의 템플릿 상속 섹션을 참조하세요.
관련 이전 게시글
- 장고 템플릿에서 주석 처리하기: 한 줄 주석과 여러 줄 주석 사용법
- 파이썬 장고 템플릿 태그: for, if, csrf_token, url, with, load 활용하기
- 파이썬 장고 템플릿 필터: 데이터 포맷팅하는 방법
- 파이썬 장고 모델(ORM): 데이터 조회, 저장, 수정 및 삭제 방법
- 파이썬 장고 웹 앱 만들기: 주소(URL)와 화면(뷰) 연결하는 방법
이 글이 도움이 되셨다면 공유 부탁 드립니다.