演習課題「共通テンプレートを呼び出そう」
右の環境の myapp に、FlaskでWebページをテンプレートで表示するプログラムが作成してあります。
layout.htmlを共通テンプレートとして呼び出すよう、index.htmlを修正してください。
修正後に、http://localhost:5000 にアクセスすると、下記のテキストが表示されます。
勇者はスライムと戦った
採点して、すべてのジャッジに正解すれば、演習課題クリアです!
※ 採点には、サーバの起動が必要です。
#07:テンプレートの共通部分を分割しよう
ここでは、テンプレートの共通部分を分離する方法について学習します。そのために、Flaskに共通のテンプレートを設置してみましょう。
myapp/templates/layout.html<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>Flask - paiza</title>
<style>body {padding: 10px;}</style>
</head>
<body>
<p>共通テンプレート</p>
{% block content %}
{% endblock %}
</body>
</html>
$ FLASK_APP=hello.py FLASK_ENV=development flask run
myapp/templates/index.html{% extends "layout.html" %}
{% block content %}
<h1>Hello {{ name_value }}</h1>
<p>Hello paiza!</p>
{% for player in players: %}
<p>{{ player + "はモンスターを戦った" }}</p>
{% endfor %}
{% endblock %}
Welcome to Jinja2 — Jinja2 Documentation (2.10)
http://jinja.pocoo.org/docs/2.10/
Templating With Jinja2 in Flask: Essentials
https://code.tutsplus.com/tutorials/templating-with-jinja2-in-flask-essentials--cms-25571
Jinja2|Pythonテンプレートエンジン - Qiita
https://qiita.com/yasumodev/items/ae11047e2c8694867892
Jinja2の基本的な使い方 - Qiita
https://qiita.com/RyoMa_0923/items/528303906a55f9b568e0
Jinja2の使い方がわかるとFlaskを用いた開発がよりスマートになる - Qiita
https://qiita.com/ryo2851/items/7ae5de21307d101b4759