[python] Flask 템플릿 엔진의 사용 방법

Flask는 Python으로 웹 애플리케이션을 개발하는 데 도움을 주는 경량화된 웹 프레임워크입니다. 이번 블로그에서는 Flask에서 템플릿 엔진을 사용하는 방법에 대해 알아보겠습니다.

템플릿 엔진이란?

템플릿 엔진은 웹 애플리케이션에서 동적인 콘텐츠를 생성하는 데 사용됩니다. HTML과 결합되어 사용자에게 동적인 데이터를 제공할 수 있습니다. Flask에서는 Jinja2 템플릿 엔진이 기본적으로 제공됩니다.

Flask 프로젝트에 템플릿 엔진 구성하기

Flask 애플리케이션에서 템플릿 엔진을 활용하기 위해서는 다음 단계를 따라야 합니다:

  1. 템플릿 디렉토리 생성: 프로젝트 루트 디렉토리에 templates 디렉토리를 생성합니다. Flask는 이 디렉토리에서 템플릿 파일을 찾습니다.

  2. 템플릿 파일 생성: templates 디렉토리 내에서 HTML 파일을 생성하고, 필요한 동적 콘텐츠를 Jinja2 템플릿 문법에 맞게 작성합니다.

  3. 플라스크 애플리케이션에 템플릿 렌더링 추가: render_template 메서드를 사용하여 Flask 애플리케이션에서 템플릿을 렌더링합니다.

from flask import Flask, render_template

app = Flask(__name__)

@app.route('/')
def index():
    return render_template('index.html', title='Home', username='John Doe')

if __name__ == '__main__':
    app.run()

위 예제에서, render_template 메서드는 index.html 파일을 렌더링하고, 해당 템플릿에 titleusername 변수를 전달합니다.

템플릿 파일 예제

다음은 단순한 템플릿 파일의 예제입니다.


<!DOCTYPE html>
<html>
<head>
    <title>{{ title }}</title>
</head>
<body>
    <h1>Hello, {{ username }}</h1>
</body>
</html>

위 예제에서는 Jinja2의 변수 출력 문법을 사용하여 titleusername 값을 출력하고 있습니다.

이제 플라스크 애플리케이션에서 템플릿 엔진을 사용하는 방법에 대해 알아보았습니다. 간단한 템플릿을 생성하고, 동적인 콘텐츠를 렌더링하여 사용자에게 보여줄 수 있게 되었습니다.

더 많은 정보는 Flask 문서를 참고하시기 바랍니다.