2011-01-26 3 views
0

hrefテンプレートタグを使用しようとするといくつかの問題があるようです。ここに私がしたいことがあります。djangoでhrefテンプレートタグを使用するのが難しいと感じる

私は私が

(r'^orders/edit/add_items/(?P<client_id>)/$', views.add_items), 

そして、私の意見のルックスこのURLに名前を付けます items.htmlこのHTMLテンプレートに私を取ることができるリンクをしたい

(r'^orders/edit/(?P<order_no>\d+)/$', views.edit_order), 

で編集オーダーフォームを持っていますこのような。

@login_required 
def add_items(request, client_id = 0): 
    client = None 
    items = None 
    try: 
     client = models.Client.objects.get(pk = client_id) 
     items = client.storageitem_set.all() 
    except: 
     return HttpResponse(reverse(return_clients)) 
    return render_to_response('items.html', {'items':items, 'client':client}, context_instance = RequestContext(request)) 

@login_required 
def return_clients(request): 
    clients = models.Client.objects.all() 
    return render_to_response('clients.html', {'clients':clients}, context_instance = RequestContext(request)) 

私の編集オーダーフォームのテンプレートにはこれがあります。私は、サーバーを再起動したときに

<a href="{% url tiptop.views.add_items client.pk %}">Add Item</a> 

今、私はリンクをクリックして、私は、このページにはいくつかの理由のために行きます。

/受注/編集/ add_items //

私は多分、私はループ「の」、私はこれを実行しようとしましたいくつかの理由が必要だと思う、hrefが姿を消しました。

EDIT:もう一度、サーバーを実行しているすべてのクライアントへのリンクが行く前に、これはすべてのクライアント名が表示されますが、のようなものの、私はviews.edit_orderに

client = models.Client.objects.all() 

とedit_orderテンプレートで

{% for c in client %} 
     <a href="{% url tiptop.views.add_items client.pk %}">{{c.name}}</a><br /> 
{% endfor %} 

を入れている再び /orders/edit/add_items //

+1

あなたのリンクはclients.htmlまたはitems.htmlにありますか? –

+0

リンクは編集オーダーフォーム(edit_order.html)にあります。ここにはこのテンプレート(items.html)へのリンクがあります – Shehzad009

+0

edit_order.htmlをレンダリングするビューとは何ですか?コンテキストに 'client'変数がありますか? –

答えて

1

は自分自身を答える見つけた:あなたのケースで210ライブラリは

これを試してみてください(私はあなたが示されているHTMLをclients.htmlに位置していることを前提と)定義されていません。

def edit_order(request, order_no): 
# some code 
    name = order.contact.client 


<a href="{% url tiptop.views.client_items name.pk %}">Add Item</a> 
0

のように見えます

{% for client in clients %} 
    <a href="{% url tiptop.views.add_items client.pk %}">Add Item</a><br /> 
{% endfor %} 
+0

これは前に私がやったことでした。しかし、何が起こったのか、私はサーバーを走って、(r '^ orders/edit /(?P \ d +)/ページに行きました、hrefリンクは表示されません。 – Shehzad009

関連する問題