django没有反向匹配 [英] django no reverse match
问题描述
好我从一个善良的人那里获得了这个问题的帮助,并希望看到有人可以帮助这里是我的代码。
urls.py
ok I was getting help from a kind person on this problem and would like to see if anyone can help here is my code. urls.py
urlpatterns = patterns('',
url(r'^venues/(?P<venue_id>\d+)/$','venues.views.venue', name='venue'),
views.py
def venue(request,venue_id):
venue= get_object_or_404(VenueProfile,
venue__pk=venue_id).select_related('venue')
return render_to_response('venues/venueprofile',{'venue',venue},
context_instance=RequestContext(request))
模板
{% load url from future %}
{% for v in venues %}
{% with ven=v.venue profile=v %}
<a href="{% url 'venue' venue_id=venue.pk %}">{{ven.name}}</a>
现在,当我尝试使用这个我得到反向为'场'与参数'()'和关键字参数'{'places_id':''}'没有找到有人可以帮我在这里,请记住,我省略了一些视图中定义的{{venues}}对象的代码。
now when I try to use this i get Reverse for 'venue' with arguments '()' and keyword arguments '{'venue_id': ''}' not found.Can anybody please help me here, and please keep in mind I left out some code like the {{venues}} object defined in a view.
推荐答案
您的<$您的模板中的c $ c>场馆对象是没有的,因此它没有 pk
。在您的模板中,您也不会传递任何场地
对象。或许简化你的代码会有所帮助:
Your venue
object in your template is none, so it doesn't have a pk
. In your template you aren't passing any venues
object either. Perhaps simplifying your code a bit will help:
调整你的视图方法有一点:
Adjusting your view method a bit:
from django.shortcuts import render
def venue(request,venue_id):
the_venue = get_object_or_404(Venue,pk=venue_id)
return render(request,'venues/venueprofile',{'venue',the_venue})
您的模板:
{% load url from future %}
<a href="{% url 'venue' venue_id=venue.pk %}">{{venue.name}}</a>
这篇关于django没有反向匹配的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!