为什么会出现NoReverseMatch
错误的任何想法?来自名为djano-ratings的updown分叉。
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))
答案 0 :(得分:2)
你需要为url的参数传入参数(我在这里使用关键字args,但位置也可以)。
在列表视图中,您可能正在迭代您的项目,所以这样的工作:
{% for thing in thing_list %}
...
<div id='vote'><a href='{% url "thing_rating" object_id=thing.id score=5 %}'>Up</a></div>
...
{% endfor %}
我认为你还需要引用网址名称。
以下是关于网址标记的更多内容:https://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#url