0

わかりました。私はこの問題について親切な人から助けを得ていました。誰かがここで助けてくれるかどうかを確認したいのですが、私のコードです。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>

これを使おうとすると、引数'()'とキーワード引数'{'venue_id':''}'が見つからない'venue'のReverseが表示されます。ビューで定義された{{venues}}オブジェクトのようなコードを出力します。

4

3 に答える 3

3

テンプレート内のオブジェクトはnoneであるため、。はありませvenuepkvenuesテンプレートでは、オブジェクトも渡していません。おそらく、コードを少し単純化すると役立つでしょう:

ビューメソッドを少し調整します。

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>
于 2012-11-01T04:23:40.863 に答える
1

venue.pkの値は空の文字列です。正規表現と一致しないため、逆一致の問題は発生していません。

{% 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> # Problem is that venue.pk is empty string

引数'()'およびキーワード引数'{'venue_id':''}'を使用して'venue'を逆にします。venue_idの値は''です。

于 2012-11-01T03:42:41.343 に答える
0

交換

{% url 'venue' venue_id=venue.pk %}

{% url 'venue' venue_id=ven.pk %}
于 2012-11-01T10:25:23.170 に答える