找不到'Reverse for 'views.showusersignin' with arguments '()' and keyword arguments '{'userid': u'rec.0'}'的匹配项

2024-06-02 23:59:41 发布

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

我看了很多关于stackoverflow的讨论,但都没有有帮助。所以我决定粘贴我的代码在这儿。所以请帮我解决我正在做的事情错了。谢谢在

这是网址.py

(r'^showusersignin/(?P<userid>\d+)/$', 'views.showusersignin'),

这里是定义视图.py

^{pr2}$

这是登录.html

{%for rec in records.object_list%}

        <tr>
            <td width = "15%">
               <a href="{%url views.showusersignin userid='rec.0' %}">{{rec.0}}</a>
            </td>
            <td width = "15%">
                {{rec.1}}
            </td>
            <td width = "15%">
                {{rec.2}}
            </td>

        </tr>
 {%endfor%}

服务器出错

Request Method: GET
Request URL:    mysite/signin
Django Version: 1.2.5
Exception Type: TemplateSyntaxError
Exception Value:    
Caught NoReverseMatch while rendering: Reverse for 'views.showusersignin' with arguments '()' and keyword arguments '{'userid': u'rec.0'}' not found.
Exception Location: /base/python27_runtime/python27_lib/versions/third_party/django-1.2/django/template/defaulttags.py in render, line 385
Python Executable:  /base/python27_runtime/python27_dist/python
Python Version: 2.7.3
Python Path:    ['/base/data/home/apps/s~bgshelloworld/9.363836595528814694', '/base/data/home/apps/s~bgshelloworld/9.363836595528814694', '/base/python27_runtime/python27_dist/lib/python27.zip', '/base/python27_runtime/python27_dist/lib/python2.7', '/base/python27_runtime/python27_dist/lib/python2.7/plat-linux2', '/base/python27_runtime/python27_dist/lib/python2.7/lib-tk', '/base/python27_runtime/python27_dist/lib/python2.7/lib-old', '/base/python27_runtime/python27_dist/lib/python2.7/lib-dynload', '/base/python27_runtime/python27_dist/lib/python2.7/site-packages', '/base/python27_runtime/python27_lib/versions/1', '/base/python27_runtime/python27_lib/versions/third_party/django-1.2', '/base/python27_runtime/python27_lib/versions/third_party/jinja2-2.6', '/base/python27_runtime/python27_lib/versions/third_party/markupsafe-0.15', '/base/python27_runtime/python27_lib/versions/third_party/setuptools-0.6c11', '/base/python27_runtime/python27_lib/versions/third_party/webapp2-2.3', '/base/python27_runtime/python27_lib/versions/third_party/webob-1.1.1', '/base/python27_runtime/python27_lib/versions/third_party/yaml-3.10']
Server time:    Thu, 13 Dec 2012 11:11:23 +0000

Tags: pybasepartylibdistexceptionwidthversions
1条回答
网友
1楼 · 发布于 2024-06-02 23:59:41

你做错了两件事。在

首先,将'rec.0'作为一个字符串放入url标记中。我想您的意思是传递该列表项的值,所以您应该执行userid=rec.0

其次,您的URL没有userid参数,因为您没有使用命名参数。将其更改为r'^showusersignin/(?P<user_id>\d+)/$',或将url标记更改为{%url views.showusersignin rec.0 %}

相关问题 更多 >