前提・実現したいこと
Djangoの認証機能としてdjango-allauthを組み込みました。
テンプレートはallauthのデフォルトテンプレートを使わずに独自テンプレートを作成ています。
allauthのデフォルトテンプレートを上書きするために独自テンプレートファイルは下記のディレクトリに格納しています。
※accountsをallauth関連のアプリケーションディレクトリとしています。
/accounts/templates/account/
しかし、「confirm-email.html」というページのみ、反映がされません。
※confirm-email.htmlはサインアップ後に遷移するページ
同一ディレクトリ内のsignup.htmlやlogin.html、password_reset.htmlなどのページはしっかり反映されます。
該当のソースコード
プロジェクトディレクトリ/accounts/templates/account/confirm-email.html
{% extends 'base.html' %} (中略) <!--メッセージの出力--> {% if messages %} {% for message in messages %} <div {% if message.tags %} class="alert {{ message.tags }} text-white fade show rounded-0" role="alert" {% endif %}> <div class="container d-flex"> <div class="alert__icon mr-3"> <i class="fas {% if message.tags == 'bg-info' %}fa-info-circle {% elif message.tags == 'bg-success' %}fa-check-circle {% elif message.tags == 'bg-warning' %}fa-exclamation-triangle {% else %}fa-minus-circle {% endif %}"></i> </div> <div class="align-self-center mr-3">{{ message }}</div> <div class="ml-auto"> <button type="button" class="alert__close alert__close--light" data-dismiss="alert" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> </div> </div> {% endfor %} {% endif %} <!--End メッセージの出力--> {% block contents %} <section class="u-content-space"> <div class="container"> <header class="text-center w-md-50 mx-auto mb-8"> <h2 class="h1">We send email</h2> <p>Please authenticate from the linked page</p> </header> </div> </section> {% endblock %}
プロジェクトディレクトリ/urls.py
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('article.urls')), path('accounts/', include('allauth.urls')), ]
試したこと
下記を試しましたが、いずれのケースも反映されませんでした。色々と調べてもなぜ反映されたいのかが分からずに困っております...
どなたか、アドバイス等いただけると幸いです..!
- ブラウザキャッシュの削除をしてからrunserverコマンドを実行し、当該ページを確認した
- ブラウザの検証ツールを使ってスクリプトを表示させたところ、独自テンプレートの内容が反映されていなかった
→親テンプレートは反映されていた(親と子テンプレートのblockタグ名を確認したが表記揺れは無し)
- 当該ファイルにタイポミスがないか確認した
補足情報
認証にはemail認証を使っていて、サインアップページにemailとパスワードを入力し、signupページを押下後、confirm-email.htmlページに飛ぶと同時に、入力されたemail宛に認証ページへのリンクを送信する認証方式にしています。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。