Не найден ответ для 'db' с аргументами '('',)'. Проверен 1 шаблон(ы): ['db/(?P<db_id>[^/]+)/$'].

когда я пытаюсь взять элементы из db.html с помощью id, выдается ошибка. Я не могу понять, в чем проблема пожалуйста, помогите мне

venue.html

{% extends 'MYapp/index.html' %}
{% block content %}

<center>
    <h1> venue.html </h1>
    <br>



    <div class="card-header">
        Featured
    </div>

    <div class="card-body container-fluid">
        <h5 class="card-title">Special title treatment</h5>
        {% for venues in venue_list %}
        <p class="card-text container-fluid">


            <a href="{% url 'db' all.id %}"> {{ venues }} {{ venues.lastname}}</a>
            {% endfor %}
        </p>

    </div>

</center>


{% endblock %}

views.py

 from django.shortcuts import render
 from django.http import *
 from  MYapp.models import *
 from .form import *



 def index(request):
    return render(request,'MYapp/index.html')
 def venue(request):
    venue_list = Task.objects.all()
    return render(request,'MYapp/venue.html',{'venue_list': venue_list})
 def db(request, db_id):
    all = Task.objects.get(pk= db_id)
    return render(request,'MYapp/db.html',{'all': all})

urls.py

произошла очередная ошибка слышно

показывает, что страница не найдена

из-за этого path('db/<db_id>/', views.db, name ='db'),

from django.contrib import admin
from django.urls import path
from . import views



urlpatterns = [

    path('nature', views.nature, name ='nature'),
    path('', views.index, name ='index'),

    path('footer', views.footer, name ='footer'),

    path('navebar', views.navebar, name ='navebar'), 

    path('form', views.form, name ='form'),
    path('venue', views.venue, name ='venue'),
    path('db/<db_id>/', views.db, name ='db'),

]

Когда вы выводите шаблон venue.html (в функции представления, называемой venue()), вы не передаете переменную all в контекст, вы просто передаете venue_list.

<

Я обнаружил, что ошибка возникает из-за того, что в пути указан неправильный url

      <p class="card-text container-fluid">


            <a href="{% url 'db' all.id %}"> {{ venues }} {{ 
            venues.lastname}}</a>
            {% endfor %}
      </p>

измените имя переменной на venues, потому что вы сделали это в цикле for затем

            <a href="{% url 'db' venues.id %}"> {{ venues }} {{ 
            venues.lastname}}</a>
            {% endfor %}
      </p>
Вернуться на верх