웹 프레임워크는 웹 애플리케이션 개발을 더욱 쉽고 효율적으로 만들어주는 도구입니다. 이 중에서 템플릿 엔진은 HTML 코드와 동적 데이터를 결합하여 웹 페이지를 생성하는 역할을 합니다.
Python은 다양한 웹 프레임워크를 제공하는데, 대표적인 예로 Django와 Flask가 있습니다. 이 블로그 포스트에서는 Python 웹 프레임워크를 이용하여 템플릿 엔진을 사용하는 방법에 대해 알아보겠습니다.
1. Django를 이용한 템플릿 엔진 사용
Django는 강력한 웹 프레임워크로서, 템플릿 엔진을 내장하고 있습니다. Django의 템플릿 엔진은 Django 템플릿 언어(DTL)를 사용하여 HTML과 동적 데이터를 결합할 수 있습니다.
# views.py
from django.shortcuts import render
def home(request):
name = "John Doe"
return render(request, 'home.html', {'name': name})
<!-- home.html -->
<html>
<head>
<title>Home</title>
</head>
<body>
<h1>Welcome, {{ name }}!</h1>
</body>
</html>
위의 예시는 Django에서 템플릿 엔진을 사용하는 간단한 예제입니다. views.py
파일에서 name
변수를 home.html
템플릿에 전달하고, 템플릿에서는 ``으로 동적 데이터를 출력합니다. 사용자가 웹 페이지에 접속하면 해당 템플릿이 렌더링되어 결과를 보여줍니다.
2. Flask를 이용한 템플릿 엔진 사용
Flask는 가벼운 웹 프레임워크로서, Jinja2라는 템플릿 엔진을 기본적으로 사용합니다. Jinja2는 Django의 DTL과 매우 유사한 문법을 제공합니다.
# app.py
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def home():
name = "John Doe"
return render_template('home.html', name=name)
<!-- home.html -->
<html>
<head>
<title>Home</title>
</head>
<body>
<h1>Welcome, {{ name }}!</h1>
</body>
</html>
위의 예시는 Flask에서 템플릿 엔진을 사용하는 간단한 예제입니다. app.py
파일에서 name
변수를 home.html
템플릿에 전달하고, 템플릿에서는 {{ name }}
으로 동적 데이터를 출력합니다. Flask 애플리케이션을 실행하면 웹 페이지에 해당 템플릿이 렌더링되어 결과를 보여줍니다.
결론
웹 프레임워크를 사용하면 템플릿 엔진을 통해 동적인 웹 페이지를 쉽게 생성할 수 있습니다. 위의 예시는 Django와 Flask를 이용하여 간단한 템플릿 엔진을 사용하는 방법을 보여주었지만, 각 프레임워크마다 더 다양하고 강력한 기능을 제공합니다. 웹 개발을 한다면 웹 프레임워크와 템플릿 엔진의 사용법을 학습하여 효율적인 웹 애플리케이션을 개발할 수 있도록 하세요.