Получение ошибки NoReverseMatch даже после правильных урлов и представлений
Получаю сообщение об ошибке NoReversedMatch даже после создания пути в urls.py и функции в views.py когда я ввожу url вручную, он работает правильно, так что путь не неправильный, пожалуйста, кто-нибудь помогите мне
NoReverseMatch at /mcq_web/
Reverse for 'quizes' not found. 'quizes' is not a valid view function or pattern name.
html, где он выдает ошибку, таков
href = "{% url 'quizes' quiz_type.id %}"
вот мой urls.py
from django.contrib import admin
from django.urls import path
from . import views
urlpatterns = [
path('', views.show_quiz, name="quiz_show"),
path('add/',views.add_user, name ="new user"),
path('show_quiz/', views.show_quiz, name="quiz_types"),
path('<int:quiz_type_id>/quizes/', views.quizes, name="ShortedQuizTypes"),
]
вот моя часть views.py для этой ошибки
def quizes(request,quiz_type_id):
quiz_type = get_object_or_404( Quiz_types,pk = quiz_type_id)
quizes = quiz_data.objects.all()
quiz_types = Quiz_types.objects.all()
details = {'quiz':quizes,'quiz_type':quiz_type,'quiz_types':quiz_types}
return render(request,'shorted_show_quiz.html',{'details':details})
на всякий случай вот весь мой views.py
from django.shortcuts import render
from django.shortcuts import get_object_or_404
from .models import quiz_data,quiz,quiz_history,Quiz_types,options,user
from .forms import user_form
# Create your views here.
# function to show quiz by type
def quizes(request,quiz_type_id):
quiz_type = get_object_or_404( Quiz_types,pk = quiz_type_id)
quizes = quiz_data.objects.all()
quiz_types = Quiz_types.objects.all()
details = {'quiz':quizes,'quiz_type':quiz_type,'quiz_types':quiz_types}
return render(request,'shorted_show_quiz.html',{'details':details})
# function to add new users
def add_user(request):
if request.method == 'POST':
form = user_form(request.POST)
if form.is_valid:
form.save()
# function to show quiz by type
def show_quiz(request):
quizes = quiz_data.objects.all()
quiz_types = Quiz_types.objects.all()
details = {'quiz':quizes,'quiz_types':quiz_types}
return render(request,'show_quiz.html',{'details':details})
я пробовал очистить кэш данных (я отменил все миграции перед очисткой кэша) перезапускал сервер много раз, вводя url вручную он работает, но не в шаблоне он продолжает выдавать ошибку, что мне делать я застрял
вот весь трассировочный бэкграунд
Имя представления ShortedQuizTypes
, а не , поэтому:quizes
<a href="{% url 'ShortedQuizTypes' quiz_type.id %}"></a>