当按钮中的URL指向带有参数的页面时,为“ NoReverseMatch”

问题描述

我有错误

在/ home / 2 /处的noreverseMatch 找不到带有参数“('',)”的“ calendar_new”。尝试了1种模式:['home /(?P \ d +)/ calendar / new / $']

一个按钮中。在ulr中,我有一个“ group_id”参数,需要将其用作过滤器参数。我不明白这是怎么回事,因为如果我在url中手动编写路径,则不会有任何问题,并且可以正确打开页面。 网址中已经存在“ group_id”参数。

在calendar.html中:

<div class="cover-container d-flex w-100 h-100 p-3 mx-auto flex-column">
        <main class="inner cove border" role="main" style="background-color: white;">
            <h1 class="cover-heading mt-3">Lista Calendari di {{ nome }}</h1>
            
            <div class="mt-5">
                <ul class="list-group">
                    {% for calendar in object_list %}
                    <a href="{{ calendar.id }}"><li class="list-group-item list-group-item-action">{{ calendar.name }}</li></a>
                    {% empty %}
                        <li class="list-group-item">Non ci sono calendari disponibili per questo edificio</li>
                    {% endfor %}
                </ul>
            </div>
            
        </main>
    <!-- NUOVO CALENDARIO -->
        <a class="btn btn-primary btn-lg active mt-5 mb-5" href="{% url 'cal:calendar_new'%}">Aggiungi Calendario</a>
</div>

在urls.py中:

url(r'^home/(?P<group_id>\d+)/$',views.CalendarsOfGroupView.as_view(),name='group_view'),url(r'^home/(?P<group_id>\d+)/calendar/new/$',views.calendar,name='calendar_new'),

解决方法

假设您在上下文中具有分组

<a class="btn btn-primary btn-lg active mt-5 mb-5" href="{% url 'cal:calendar_new' group.id %}">Aggiungi Calendario</a>

由于您的网址要求必须匹配group_id参数

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...