プログラミング/Django/共通テンプレート

DjangoのWebサイトを作るときによく使われる共通テンプレートについての説明です。

base.html(ファイル名はなんでも良いけど、このファイル名がよく使われている。)

全てのファイルで共通して使用するブロックを指定しています。

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta neme="viewport" content="width=device-width, initial-scale=1">
    <title>{% block title %}{% endblock %}</title>
</head>
<body>
<header>Yoshitaka's Prpject App</header>
<nav>
    <a href="/">TOP</a>
    <a href="/resume/">Resume</a>
</nav>
{% block content %}{% endblock %}

</body>
</html>

top.html(これもファイル名は自由)

共通テンプレートの中に埋め込むブロックを指定しています。

{% extends 'project_app/base.html' %} #base.htmlを読み込む
{% block title %}Yoshitaka's Prpject App{% endblock %}
</head>
<body>
<header>Yoshitaka's Prpject App</header>

{% block content %}
<h1>{{ name }}のプロフィール</h1> #nameはview.pyで指定
<p>Python、Djangoが好きなプログラマー。</p>

<h2>趣味</h2>
<ul>
    <li>盆栽</li>
    <li>妻との雑談</li>
    <li>散歩</li>
</ul>
{% endblock %}

%d人のブロガーが「いいね」をつけました。