前提・実現したいこと
Django初心者です。書籍をもとに簡単な会員制Webアプリを作成しております。
エラーが解決できずご質問致します。
発生している問題・エラーメッセージ
NoReverseMatch at /
Reverse for 'account_login' not found. 'account_login' is not a valid view function or pattern name.
該当のソースコード
【base.html】 {% load static %} <html lang="ja"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <meta name="description" content=""> <meta name="author" content=""> <title>{% block title %}{% endblock %}</title> <!-- Bootstrap core CSS --> <link href="{% static 'vendor/bootstrap/css/bootstrap.min.css'%}"rel="stylesheet"> <!-- Custom fonts for this template --> <link href="https://fonts.googleapis.com/css?family=Catamaran:100,200,300,400,500,600,700,800,900" rel="stylesheet"> <link href="https://fonts.googleapis.com/css?family=Lato:100,100i,300,300i,400,400i,700,700i,900,900i" rel="stylesheet"> <!-- Custom styles for this template --> <link href="{% static 'css/one-page-wonder.min.css' %}" rel="stylesheet"> <!-- My style --> <link rel="stylesheet" type="text/css" href="{% static 'css/mystyle.css' %}"> {% block head %}{% endblock %} </head> <body> <div id="wrapper"> <!-- Navigation --> <nav class="navbar navbar-expand-lg navbar-dark navbar-custom fixed-top"> <div class="container"> <a class="navbar-brand" href="{% url 'diary:index' %}">PRIVATE DIARY</a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarResponsive"> <ul class="navbar-nav ml-auto"> <li class="nav-item {% block active_inquiry %}{% endblock %}"> <a class="nav-link" href="#">INQUIRY</a> </li> </li> </ul> <ul class="navbar-nav ml-auto"> <li class="nav-item"> <a class="nav-link" href="#">Sign Up</a> </li> <li class="nav-item"> <a class="nav-link" href="#">Log In</a> </li> </ul> </div> </div> </nav> {% block header %}{% endblock %} {% block contents %}{% endblock %} <!-- Footer --> <footer class="py-5 bg-black"> <div class="container"> <p class="m-0 text-center text-white small">Copyright © Your Website 2019</p> </div> <!-- /.container --> </footer> <!-- Bootstrap core JavaScript --> <script src="{% static 'vendor/jquery/jquery.min.js' %}"></script> <script src="{% static 'vendor/bootstrap/js/bootstrap.bundle.min.js' %}"></script> </div> </body> </html>
【index.html】 {% extends 'base.html' %} {% load static %} {% block title %}Web上にあなた専用の日記ページを保存できるサービス | Private Diary{% endblock %} {% block header %} <header class="masthead text-center text-white"> <div class="masthead-content"> <div class="container"> <h1 class="masthead-heading mb-0">Private Diary</h1> <h2 class="masthead-subheading mb-0">あなた専用の日記保存サービス</h2> <a href="{% url 'account_login' %}" class="btn btn-primary btn-xl rounded-pill mt-5">LOG IN</a> </div> </div> <div class="bg-circle-1 bg-circle"></div> <div class="bg-circle-2 bg-circle"></div> <div class="bg-circle-3 bg-circle"></div> <div class="bg-circle-4 bg-circle"></div> </header> {% endblock %} {% block contents %} <section> <div class="container"> <div class="row align-items-center"> <div class="col-lg-6 order-lg-2"> <div class="p-5"> <img class="img-fluid rounded-circle" src="{% static 'img/01.jpg' %}" alt=""> </div> </div> </div> </div> </section> <section> <div class="container"> <div class="row align-items-center"> <div class="col-lg-6"> <div class="p-5"> <img class="img-fluid rounded-circle" src="{% static 'img/02.jpg' %}" alt=""> </div> </div> <div class="col-lg-6"> <div class="p-5"> <h2 class="display-4">Save Your Diary</h2> <p>あなたの日記をWebに保存</p> </div> </div> </div> </div> </section> <section> <div class="container"> <div class="row align-items-center"> <div class="col-lg-6 order-lg-2"> <div class="p-5"> <img class="img-fluid rounded-circle" src="{% static 'img/03.jpg' %}" alt=""> </div> </div> <div class="col-lg-6 order-lg-1"> <div class="p-5"> <h2 class="display-4">Membership System</h2> <p>会員制のWeb日記サービス</p> </div> </div> </div> </div> </section> {% endblock %}
【vies.py】 from django.views import generic class IndexView(generic.TemplateView): template_name = "index.html"
【urls.py】 from django.urls import path from.import views app_name = 'diary' urlpatterns = [ path('', views.IndexView.as_view(), name="index"), ]
試したこと
エラーメッセージを調べてみたところ、ビューが有効ではないとのことなので、viws.pyの
class IndexView(generic.TemplateView):
template_name = "index.html"
class IndexView(generic.TemplateView):
template_name = "base.html"
に変えて試してみると次のような画面になりました。
エラーからもbase.htmlに原因があるのではないかと思うのですが、そこから先がわかりません。
ご教授いただければ幸いです。宜しくお願い致します。
補足情報(FW/ツールのバージョンなど)
venvを作成し、Pycharmを使用しております。
書籍は「動かして学ぶpython Django入門」です。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/05 12:30