templates にbase.htmlを備える
pythonは誰が見ても読みやすくなるように作られている。
そしてそれを実現するためにもコードをスッキリ書くことが求められる。可読性が高いものはメンテナンスしやすくなるメリットを享受できる。同じ内容を二度も三度も書くのは避けるべきだ。
htmlに焦点を当てると、同じ内容を繰り返すことが多い。
そこで同じ内容をbase.htmlをつくり省略するようにする。
疑問点
アプリケーション内に複数templatesフォルダが有るときは、base.htmlをどこに置くべきか?
どのようにbase.htmlを使用するのか?
使い方
まずbase.htmlとnaiyou.htmlを準備する。
base.html
{% load static %} <!doctype html> <html lang="en"> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title></title> </head> <body> {% block content %} #ここにnaiyou.htmlのblock contentの内容が入る {% endblock %} </body> </html>
naiyou.html
#ポイント下記で挿入したい先のテンプレートを指定する {% extends "base.html" %} {% load static %} #ポイント 挿入内容を書く {% block content %} <h1>このページで知らせたい内容を書きます</h1> <h2>そうするとbase.htmlのブロックコンテントのところにこの内容が挿入されます<h2> {% endblock%}