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

Hej!

Получаю сообщение об ошибке 'Reverse for 'nuts_detail' with arguments '('',)' not found. 1 pattern(s) tried: ['common/nut/(?P[0-9]+)/$']'

когда я связываю свой detail_nuts.html таким образом, но я могу попасть на страницу через url-bar, так что вид, похоже, работает правильно.

И я могу получить значение plant.nuts_level_3, когда его нет в ссылке.

<!-- detail_plant.html -->

<p><b>Address: </b>
    <b>NUTS (level 3): </b>
        <a href="{% url 'common:nuts_detail' nuts.id %}">
                {{plant.nuts_level_3}}
    </a>
</p>
# common/urls.py
from django.urls import path
import common.views

app_name = "common"
urlpatterns = [
    path("nut/<int:pk>/", common.views.NutsDetail.as_view(), name="nuts_detail")
]
# plants/models.py
class Plant(models.Model):
    nuts_level_3 = models.ForeignKey(
        NutsLevel3,
        on_delete=models.PROTECT,
        blank=True,
        null=True,
        related_name="nuts_level_3"
    )
# common/models.py
class NutsLevel3(models.Model):
    code = models.CharField(max_length=5, unique=True)
    nuts_level_2 = models.ForeignKey(NutsLevel2, on_delete=models.CASCADE)
    name_native = models.CharField(max_length=100, blank=True)

    def __str__(self):
        return f"{self.name_native}"

Я попробовал вставить ссылку

{% for nuts in plant.nuts_level_3.all %}
    <a href="{% url 'common:nuts_detail' nuts.id %}">
        {{nuts.name_native}}
    </a>
{% endfor %}

Сообщение об ошибке исчезает и шаблон отображается, но Nuts не дается вообще, он просто остается как пустое поле.

Есть ли у кого-нибудь идеи? Любая помощь приветствуется! :)

Вернуться на верх