Как избежать отсутствия обратного соответствия в django

Я не знаю, почему эта ошибка occurred no revers match пока я занимаюсь Django.

Я изменил код shops.html, чтобы сделать ссылку на пиццу, но после этого изменения произошла ошибка

Повтор для 'pizza' с аргументами '('',)' не найден. Проверен 1 шаблон(ы): ['shops/(?P<pizza_id>[0-9]+)$']

первый код :

<ul>
    {%for shop in shops%}

         <li>
            {{shop}}
         </li>

второй код:

<ul>
    {%for shop in shops%}

     <li>
        <a href="{% url 'pizzas:pizza' pizza.id %}">{{shop}}</a></li>

Я разместил все коды в Pastebin при необходимости.

ваша проблема в том, что вместо shop.pk вы использовали pizza.id, а это на самом деле не определено.
измените это

{%for shop in shops%}
 
 <li>
    <a href="{% url 'pizzas:pizza' pizza.id %}">{{shop}}</a></li>
 
{%empty%}
 
 <li>currently there is no pizza available</li>
{%endfor%}

to

{%for shop in shops%}
 
 <li>
    <a href="{% url 'pizzas:pizza' shop.pk %}">{{shop}}</a></li>
 
{%empty%}
 
 <li>currently there is no pizza available</li>
{%endfor%}
Вернуться на верх