找不到带有参数(1,)'的“x”的反转。已尝试1个模式:['grupe/(?P<grupa_id>[09]+)/(?P<elev_id>[09]+)/$']

2024-10-03 06:27:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图构建一个django应用程序,它允许我访问包含student(elev)对象的组。无法显示对象。在

埃列维网址.py

from django.conf.urls import url
from . import views

app_name = 'elevi'

urlpatterns = [
    #/
    url(r'^$', views.index, name = 'index'),
    #/Grupe/id
    url(r'^grupe/(?P<grupa_id>[0-9]+)/$', views.connect, name="connect"),
    #/Grupe/id/elevi_id
    url(r'^grupe/(?P<grupa_id>[0-9]+)/(?P<elev_id>[0-9]+)/$', views.elev_individual, name="elev_individual")
    ]

埃列维视图.py

^{pr2}$

测试.html

{% if toate_grupele %}
<ul>
    {% for grupa in toate_grupele %}
         <li><a href ="{% url 'elevi:connect' grupa.id %}">{{ grupa.nume_grupa }}</a></li>
    {% endfor %}
</ul>
{% else %}
    <p>Nu sunt grupe salvate</p>
{% endif %}

连接.html

<h1>{{ grupa.nume_grupa }}</h1>
<h3>Lista Elevi:</h3>

<ul>
    {% for elev in grupa.elev_set.all %}
        <li><a href="{% url 'elevi:elev_individual' elev.id %}">{{ elev.nume_elev }} {{ elev.prenume_elev }}</a></li>
    {% endfor %}
</ul>

标高_个人.html

<p>{{ elev.nume_elev }} {{ elev.prenume_elev }}</p>

Tags: djangonameidurlhtmlconnectliul
1条回答
网友
1楼 · 发布于 2024-10-03 06:27:09

url模式与视图参数不匹配

视图

def index(request): #url pattern don't need any argument
def connect(request,grupa_id): #url pattern needs one argument
def elev_individual(request,elev_id): #requires one argument

网址

^{pr2}$

如果您查看错误消息,elev_individual需要def elev_individual(request,elev_id):视图方法中的两个参数。要解决此问题,请删除第二个参数,以便

['grupe/(?P<grupa_id>[0-9]+)/(?P<elev_id>[0-9]+)/$']

变成

['grupe/(?P<elev_id>[0-9]+)/$']

或者将另一个参数elev_id作为第二个参数添加到视图中,使其成为

def elev_individual(request,grupa_id, elev_id): 

并根据需要进行过滤

相关问题 更多 >