質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.36%
Cloud9

Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

2回答

563閲覧

【Python】templatesに入っているviewページが表示されません

Java_student

総合スコア83

Cloud9

Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2024/07/05 07:58

編集2024/07/11 00:22

実現したいこと

下記の質問をさせて頂き、無事allauthのtemplatesをコピペして持ってくることに成功したのですが、テスト環境でサーバーを起動してページを確認したのですが、表示されませんでした。
表示されるようにしたいのですが、この場合はurls.pyの記載が原因でしょうか?

【Django】allauthのtemplatesがどこにあるのかを知りたいです。

前提

templatesのファイル構成 templates |-allauth |-account |-email |-messages |-snippets |login.html |signup.html |base.html |index.html |nav.html

発生している問題・エラーメッセージ

templatesにあるうユーザー認証ページが表示されません。

該当のソースコード

base.html

1{% load static %}<!-- static設定を読み込む --> 2{% load django_bootstrap5 %} 3 4<!DOCTYPE html> 5<html lang="ja"> 6<head> 7 <meta charset="UTF-8"> 8 <meta http-equiv="content-language" content="ja"> 9 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> 10 <title>TEST</title> 11 <link href="{% static 'vendor/bootstrap/css/bootstrap.min.css' %}" rel="stylesheet"> 12 <link href="{% static 'vendor/bootstrap/css/bootstrap-grid.min.css' %}" rel="stylesheet"> 13 <link href="{% static 'moomin.css' %}" rel="stylesheet"> 14 <script src="{% static 'vendor/jquery/jquery-3.2.1.min.js' %}"></script> 15 <script src="{% static 'vendor/bootstrap/js/bootstrap.min.js' %}"></script> 16 17 {% block meta_tag %}{% endblock %} 18 {% block css %}{% endblock %} 19 {% bootstrap_css %} 20 {% bootstrap_javascript %} 21 22 <!--css--> 23 <link href="{% static 'css/app.css' %}" rel="stylesheet"> 24 <link href="{% static 'css/header.css' %}" rel="stylesheet"> 25 <link href="{% static 'css/base.css' %}" rel="stylesheet"> 26 <link href="{% static 'css/queries.css' %}" rel="stylesheet"> 27 28 <!--JavaScript--> 29 30</head> 31 32<body class="bg-dark"> 33{% include 'nav.html' %} <!-- nav.htmlの記述を持ってくる --> 34{% block contents %}{% endblock %} 35</body> 36<script src="{% static 'js/jquery-3.4.1.min.js' %}"></script> 37<script src="{% static 'js/bootstrap.bundle.min.js' %}"></script> 38 39</html> 40

templates/allauth/account/login.html

1{% extends "base.html" %} 2{% load static %} 3{% block css %} 4 <link rel="stylesheet" type="text/css" href="{% static '/css/header.css' %}"> 5 <link rel="stylesheet" type="text/css" href="{% static '/css/account-style.css' %}"> 6{% endblock %} 7{% block js %}{% endblock %} 8 9 10 11{% block title %}ログイン{% endblock %} 12 13{% block content %} 14 15<section class="container"> 16 17 <h2>LOGIN</h2> 18 <form class="login" method="POST" action="{% url 'account_login' %}"> 19 {% csrf_token %} 20 21 {% for field in form%} 22 <div class="account-form"> 23 <div class="account-filed"> 24 {% if forloop.last %} 25 <span class="last-field">{{ field }}</span> 26 <span class="login-maintain">ログイン状態を維持する</span> 27 {% else %} 28 <span class="non-last-field">{{ field }}</span> 29 {% endif %} 30 </div> 31 32 <div class="account-helptext"> 33 {% if field.errors %} 34 <p>{{ field.errors.0 }}</p> 35 {% endif %} 36 </div> 37 </div> 38 {% endfor%} 39 40 {% if redirect_field_value %} 41 <input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}" /> 42 {% endif %} 43 44 {% if form.non_field_errors %} 45 <div class="non-field-error"> 46 <ul> 47 {% for non_field_error in form.non_field_errors %} 48 <li>{{non_field_error}}</li> 49 {% endfor %} 50 </ul> 51 </div> 52 {% endif %} 53 <div class="password-reset"> 54 <a class="secondaryAction" href="{% url 'account_reset_password' %}"> パスワードの再設定</a> 55 </div> 56 57 <div class="account-grid"> 58 <button class="btn primaryAction form-submit" type="submit">ログイン</button> 59 <a href="{{ signup_url }}" class="btn btn-account create-account">アカウント作成</a> 60 </div> 61 62 </form> 63 64</section> 65 66{% endblock %} 67

試したこと

accounts/loginページでテスト環境の表示されないページで検証をクリックして中のコードを確認したのですが、login.htmlのコードが入っていませんでした。
accountsディレクトリ下にもurls.pyを作って表示されるようにしたほうが良いのでしょうか?

!追記!
コンソールのエラーが多かったので色々と調べて上記の{% extends "account/base.html" %}の箇所を消すとフォーム欄が表示されました。
恐らくbase.htmlに原因があるのではないかと思いました。

補足情報(FW/ツールのバージョンなど)

python3
Django4

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

quickquip

2024/07/08 09:14 編集

ファイル構成の部分もコードブロックにしましょう templatesの上のディレクトリはなんですか? accountsはDjangoアプリになっているパッケージだと思いますが、どこの位置にありますか? 追記 https://note.com/horiday_tech/n/n2bca87d0e7cd を後ろまで読んだら test_app が登場してきました。質問の templates はそこの中の templates ですか? 追記 「accountsはDjangoアプリになっているパッケージだと思いますが、」は勘違いで必ずしもそうとは限らないですね。質問者さんの手元でどうなっているかはわかりませんが
TakaiY

2024/07/05 11:37

> サーバーを起動してページを確認したのですが、表示されませんでした。 これでは 何がどうおかしいのかわかりません。 前回のポストでは「そこで/accounts/signupでサインアップページが表示されるようになっ」て、その体裁を変えるために、Templateを自分のところにコピーしたのだと思いますが、何がどうなったのでしょう。
Java_student

2024/07/06 18:49

言葉足らずになってしまい申し訳ありません。 コピペを行い、コピペしたページのデザインなどを確かめる為にサインアップページを表示させようとaccounts/signupで確認しました。 ですがサインアップページにフォーム欄などが表示されなかったのでそのページ内を右クリックして検証をクリックしてページ内のコードを確認しようとしました。 ですがページ内のbodyタグを開いても何もコードがありませんでした。 コピペしたサインアップページを質問に記載します。
TakaiY

2024/07/08 09:46

いずれにしても、出発点に戻ってやり直すのがベストだと思います。
quickquip

2024/07/08 11:12 編集

> 上記の{% extends "account/base.html" %}の箇所 それは消えていて、どこにどう書いてあったのか分からないようにされています。
guest

回答2

0

{% extends "account/base.html" %}
としたかったら、account/base.html がロードできる場所に、ロードできるhtmlを置かなければなりませんが、今はないのでエラーになります。

既存のtemplates直下のbase.htmlからextendsしたいなら{% extends "base.html" %}と書きます。
{% extends "account/base.html" %}と書きたかったら、templates/account/base.html か templates/allauth/account/base.html を置く必要がありそうです。

(なにをやっているのか? が分からなすぎて細部は分かりません)


https://docs.djangoproject.com/ja/5.0/intro/tutorial03/#id4 の下

デフォルトの設定ファイルでは、 DjangoTemplates バックエンドが設定されており、

あたりから "テンプレートの名前空間" のコラムのところあたりまでを読むとよさそうです。

投稿2024/07/08 11:21

編集2024/07/10 23:40
quickquip

総合スコア11222

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Java_student

2024/07/10 15:17

すみませんもともとaccount/base.htmlには{% extends "base.html" %}が記載されていたのですが、login.htmlから直接{% extends "base.html" %}を記載したのですがそれでも同じような現象になりました。
quickquip

2024/07/10 23:49 編集

ただの書き損じだとは思いますが、何を言っているのか分からないレベルなので書き直してもらえるとよいかと。 account/login.html はどこから持ってきたのか account/base.html とはなにものか など分からなすぎてコメントありません。
quickquip

2024/07/10 23:39

間違いがあったので回答は元に戻します
quickquip

2024/07/10 23:48 編集

TakaiY さんのコメントの通り、最初からやり直しつつ、どのような作業をしたかが第三者に伝わるようなメモを残していくのがよさそうです。 allauth の内容のままでエラーなく動くことを確認 ちょっとだけ表示を変えて、コピーしたものが読みこまれていることを確認( {% trans "Sign In" %} の右に コピーした方 みたいな文字を入れて、それが表示されるかどうか程度の軽微な修正) と進んでいくのがいいと思います とにかく、質問する以前に「なにをやったかが説明できること」を目指すべきでは
Java_student

2024/07/11 00:23

すみません。 質問のコードの表示に大きな誤りがありました。 修正させて頂きました。 分かりずらい質問になってしまい申し訳ありません。
guest

0

回答ではありません。

「login.htmlのコードが入っていませんでした」という状況はおかしいです。
まずは、当初の、「allauthデフォルトのページが表示される状態」に戻しましょう。
そして、必要なファイルをモジュールのディレクトリからコピーし、base.pyもしくはsettings.pyの中のTEMPLATESの項目を編集してコピペしたテンプレートのディレクトリを追加します。
正しくできればこの段階でコピーしたテンプレートが使われるはずですが、そうならなくても、少なくともデフォルトのものは表示されるはずです。

投稿2024/07/07 04:03

編集2024/07/07 04:41
TakaiY

総合スコア13730

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Java_student

2024/07/08 09:36 編集

質問にも追記させて頂いたのですが、login.htmlやsignup.htmlの上記の{% extends "account/base.html" %}を消したところフォーム欄が表示されました。 もしかしたらbase.htmlのscriptやcss周りの設定に原因かあったのかもしれません。 !追記! やはりbase.htmlの何処かのcss及びscriptに関する記述のどれかが表示されない原因ぽいのですがまだ特定できていません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問