NoReverseMatch at /top/とエラーが出て、解決できないのでアドバイスお願いします。
NoReverseMatch at /top/ Reverse for 'users/index' not found. 'users/index' is not a valid view function or pattern name.
とエラーが出ています。
app -urls.py -views.py -settings.py templates -app -top.html -users -login.html users -urls.py -views.py
という構造でDjangoアプリを作っています。
appのurls.pyには
from django.contrib import admin from django.urls import path, include from . import views urlpatterns = [ path('top/', views.top, name='top'), path('users/', include('users.urls')), path('admin/', admin.site.urls), ]
と書いて
views.pyには
from django.shortcuts import render, redirect def top(request): return render(request, 'app/top.html')
と書きました。
templates/app/top.htmlには
<html lang="ja"> <body> {% if user.user_id %} <p>ログインしました.</p> <p>こんにちは,{{ user.user_id }}さん</p> {% else %} <a href="{% url 'users/index' %}">ここをクリック</a> {% endif %} </body> </html>
usersのusers.pyには
from django.urls import path, include from . import views urlpatterns = [ path('index/', views.Account_Users.as_view()), ]
と書きました。
templates/app/top.htmlの”ここをクリック”のurlの中身を
../users/index
に書き換えたりしてurlが正しくなるようにしましたが同じエラーが出ました。
今の書き方だとappアプリ内にいるから一個上の階層に行かないとusersアプリにアクセスできないと思ったのですが何か間違っていますか?
またこのエラーはurlの書き方が間違っていることが原因だと思っていたのですが、そもそもエラーのガン院を間違って捉えているのでしょうか?
ご教授お願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/19 04:28