Django HTML template テンプレートHelloWorld

今回は、DjangoでHTMLを利用して、HelloWorldを表示させるまでのメモです。

以下の記事では、

Djangoプロジェクト作成 PyCharm

GETのリクエストに対して、レスポンス処理でHelloWorldという文字列を返す内容になっていますが、

今回は、HTMLファイルを利用して表示させてみようと思います。

上記の記事にメモしてあるDjangoプロジェクトに、続けて修正を行う内容になっておりますので、

検証用のプロジェクトの情報を知りたい方は、上記の記事をご確認頂けますでしょうか。

 

1. settings.py 内容確認

まずは、settings.pyに、テンプレートファイルの配置場所の設定が含まれているか確認します。

以下の様な形で、テンプレートの設定が行われていれば、

アプリケーションフォルダ内に、templatesフォルダを作成して利用することが出来ます。

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

尚、Djangoのv3.0.0以上のバージョンの場合、

settings.pyが生成される際に、自動的に設定されております。

ただ、Djangoの公式チュートリアルを確認すると、

以下の様に、’DIRS‘に、[os.path.join(BASE_DIR, ‘templates’)],を指定する説明が記載されております。

私の環境では、自動生成されたままの状態で正しく動作しましたが、

もしも、正しく動作しない場合は、公式サイトの情報を参考に頂ければと思います。

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

はじめての Django アプリ作成、その 7

 


2. templatesフォルダ作成

次に、HTMLを配置するtemplatesフォルダをアプリケーションフォルダ内に作成します。

フォルダの名称とパスは、settings.pyに記述した、

‘DIRS’: [os.path.join(フォルダパス, ‘フォルダ名’)],

の内容と一致させる必要があります。

※以下は、PyCharmでの作成手順となります。


3. templates テンプレート HTMLファイル作成

次に、HTMLファイルを、templatesフォルダ内に作成します。

作成後、HTMLの内容を表示させたい内容に変更します。


4. views.py テンプレート 表示用処理追加

views.pyに、HTMLテンプレートを表示させるための処理を追加します。

今回は、専用クラスを作成する形で処理を追加します。

class indexView(generic.TemplateView):
  template_name = "htmlファイル名"


5. urls.py テンプレート 表示用処理追加

次に、アプリケーションフォルダに存在するurls.pyに、URL設定の処理を追加します。

urlpatternsにテンプレートファイルを利用した画面表示処理の記述を追記します。

urlpatterns = [
    path('url名称/', views.views.pyに追加したクラス名称.as_view(), name='Djangoアプリ名称'),
]


6. サーバー起動 実行確認

サーバーを起動して、ブラウザで以下のURLにアクセスします。

http://127.0.0.1:8000/アプリ名/urls.pyで設定した文字列/

HTMLテンプレートの内容が表示されれば、正常に動作しています。

尚、デフォルトの設定であれば、URLにアクセスする度に、

コンソールログに、GETのログが表示されると思われます。


 

今回のメモは、以上となります。

静的ファイルである、cssやjsファイルの利用方法についても、

今後メモしていきたいと思います。

都内でエンジニアをやっています。 2017年に脱サラ(法人設立)しました。 仕事で調べたことや、気になったことをメモしています。
投稿を作成しました 173

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連投稿

検索語を上に入力し、 Enter キーを押して検索します。キャンセルするには ESC を押してください。

トップに戻る