Ошибка Reverse for 'rocket' with arguments '('',)' not found. 1 pattern(s) tried: ['rockets_bdf_all/(?P[0-9]+)/\\Z']
Не могу создать ссылку, выдает ошибку.
Текст ошибки:
Reverse for 'rocket' with arguments '('',)' not found. 1 pattern(s) tried: ['rockets_bdf_all/(?P<rocket_id>[0-9]+)/\\Z']
И ссылается на файл
rockets_bdf_all.html
на ссылку
{% url 'bdf:rocket' rocket.id %}">{{rockets_bdf}}
models.py
from django.db import models
class Rockets_bdf(models.Model):
#Формирование файла БДФ для ракеты
text = models.CharField(max_length=200, null=True, help_text='Введите описание проекта') #Описание проекта
data_added = models.DateTimeField(auto_now_add=True, null=True) #время создания
start_rockets = models.SmallIntegerField() #Определение старта ракеты. Введите 1, если старт наземный, 0 - подводный
kolichestvo_amort = models.SmallIntegerField() #Количество поясов амортизации. Введите число от 2 до 5
zhestkost_amort = models.DecimalField(decimal_places=2, max_digits=8) #Задайте жесткость амортизатора (с точностью до сотых): \n zhestkost_amort * 10^7
def __str__(self):
#Отображение названия модели
return f"{self.text[:50]}..."
urls.py
from django.urls import path
from . import views
app_name = 'bdf'
urlpatterns = [
#домашняя страница
path('', views.index, name='index'),
#список всех проектов
path('rockets_bdf_all/', views.rockets_bdf_all, name='rockets_bdf_all'),
#страница с отдельным проектом
path('rockets_bdf_all/<int:rocket_id>/', views.rocket, name='rocket'),
]
views.py
from django.shortcuts import render
from bdf.models import Rockets_bdf
def index(request):
# домашня страница приложения bdf
return render(request, 'bdf/index.html')
def rockets_bdf_all(request):
# выводит все проекты
rockets_bdf_all = Rockets_bdf.objects.all()
rocket = Rockets_bdf.objects.all()
context = {'rockets_bdf_all': rockets_bdf_all, 'rocket' : rocket}
return render(request, 'bdf/rockets_bdf_all.html', context)
def rocket(request, rocket_id):
# выводит один проект
rocket = Rockets_bdf.objects.get(id=rocket_id)
context = {"rocket": rocket}
return render(request, 'bdf/rocket.html', context)
rocket.html
{% extends "bdf/base.html" %}
{% block content %}
<p>
Проект: {{ rocket }}
</p>
{% endblock content %}
rockets_bdf_all.html
{% extends "bdf/base.html" %}
{% block content %}
<p>
Ваши проекты
</p>
<ul>
{% for rockets_bdf in rockets_bdf_all %}
<li>
<a href="{% url 'bdf:rocket' rocket.id %}">{{rockets_bdf}}</a>
</li>
{% empty %}
<li>Проекты еще не созданы.</li>
{% endfor %}
</ul>
{% endblock content %}