2

私はスタックオーバーフローに関する多くの議論を見ましたが、どれも役に立ちませんでした.だから私は自分のコードをここに貼り付けることにしました.

ここにurls.pyがあります

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

これがviews.pyの定義です

def showusersignin(request,userid):

ここにsignin.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
4

1 に答える 1

1

あなたは2つのことを間違っています。

まず、'rec.0'url タグ内に文字列として配置しました。そのリスト項目の値を渡すつもりだと思うので、そうするべきですuserid=rec.0

次に、名前付きパラメーターを使用していないため、URL にuserid引数がありません。に変更するかr'^showusersignin/(?P<user_id>\d+)/$'、URL タグを{%url views.showusersignin rec.0 %}

于 2012-12-13T11:36:00.480 に答える