1

NoReverseMatchこれがエラーを返す理由はありますか? updownと呼ばれるdjano -ratingsのフォークから。

urls.py:

url(r'^(?P<object_id>\d+)/rate/(?P<score>[\d\-]+)/$', AddRatingFromModel(), {
    'app_label': 'appname',
    'model': 'Thing',
    'field_name': 'rating',
}, name='thing_rating'),

テンプレート:

<div id='vote'><a href='{% url thing_rating %}'>Up</a></div>

アイデアをありがとう!


編集:明確にするためにビューを追加

def index(request):
    thing_list = Thing.objects.all()
    return render_to_response('index.html',
                         {'thing_list':thing_list},
                         context_instance=RequestContext(request))
4

1 に答える 1

2

URLのパラメータに引数を渡す必要があります(ここではキーワードargsを使用しますが、positionalも問題ありません)。

リストビューでは、おそらくアイテムを繰り返し処理しているので、次のように機能します。

{% for thing in thing_list %}
    ...
    <div id='vote'><a href='{% url "thing_rating" object_id=thing.id score=5 %}'>Up</a></div>
    ...
{% endfor %}

URL名を引用符で囲む必要もあると思います。

urlタグの詳細は次のとおりです:https ://docs.djangoproject.com/en/dev/ref/templates/builtins/?from = olddocs#url

于 2012-10-27T00:20:43.037 に答える