トップ

全ページ

掲示板

質問

ログインをしてページを更新するだけでお金を稼ぐことが出来ます。
ページの作成

ページの作成

親となるページを選択してください。

ページは必ず何かしらの親ページに紐づきます。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球

子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール

親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
テンプレートを更新

3. djangoのテンプレートの作成とヘッダー・フッターの共通化

テンプレートの基本

アプリケーションディレクトリ直下にtemplatesディレクトリを作成しましょう。

templatesディレクトリ内に以下のindex.htmlを作成します。

{% if item_list %}

    <ul>

    {% for item in item_list %}

        <li>{{ item }}</li>

    {% endfor %}

    </ul>

{% else %}

    <p>No item.</p>

{% endif %}

 

templateに値を渡すviewを作成しましょう。

アプリケーションディレクトリ直下のviews.pyに以下の記述をしましょう。

from django.shortcuts import render

def index(request):

    item_list = ['a', 'b', 'c']

    template = loader.get_template('index.html')

    context = {

        'item_list': item_list,

    }

    return render(request, 'index.html', context)

indexにリクエストするとテンプレートを表示することが出来ます。

 

テンプレートの共通化

ヘッダーやフッターといったテンプレートの共通部分を実装するには以下のようにします。

以下、共通部分となるbase.htmlです。

<!DOCTYPE html>

<html lang="ja">

        <head>

                <meta charset="UTF-8">

                <title>{% block title %}{% endblock title %}</title>

        </head>

        <body>

                {% block content %}

                {% endblock %}

        </body>

</html>

 

独自実装の部分は

        {% block content %}

        {% endblock %}

となります。

{% block title %}{% endblock title %}

は後述します。

 

以下、独自実装部分のテンプレートです。

{% extends "base.html" %}

{% block title %}ページタイトル{% endblock title %}

{% block content %}

    <form method="post">

        {% csrf_token %}

        ...

    </form>

{% endblock %}

extendsで共通テンプレートを読み込んでblock content内に独自実装部分を記載します。

ページごとにタイトルを変える必要があるので、block titleに対してページのタイトルを設定しましょう。

子ページ
子ページはありません
同階層のページ
  1. Templateの使用準備
  2. Templateの定義方法
  3. テンプレートの作成と共通化
  4. setting.pyにおけるテンプレートの設定
  5. テンプレートの名前の重複について
  6. 静的ファイルの読み込み
  7. if文
コメント一覧

コメントがありません