2016-10-12 1 views
1

は、現在、私の設定は次のようになりますURL confの中にスラグ及びPK(または他の変数)を渡す:/含め

urls.py:

url(r'^(?P<slug>[-_~\w]+)/$', SomeDetailView.as_view(), name='detail'), 

views.pyはそうのようなプレーンバニラです。

class GetDetailView(SomeDetailViewMixin, DetailView): 
    model = Dummy 
    template_name = "detail.html" 

とhtmlそうのようなものです:

<h2><a href="{% url 'detail' i.slug %}" rel="nofollow"></a>Text</h2> 

..すべてが完璧に動作します。しかし、現在私が探しているのは、別の変数(pkなど--)をHTML経由でURL confに渡すことです。だから、のようなもの:

ListViewです)HTML:

<h2><a href="{% url 'detail' i.slug i.var2 %}" rel="nofollow"></a></h2> 

とurls.pyのようなもの:

url(r'^(?P<slug>[-_~\w]+)/$', SomeDetailView.as_view(), kwargs={'var2': var2}, name='detail'), 

は、可能なこれらの線に沿って何かありますか? (VAR2がuglyあるので)私は何をしたくないと、URL自体にvar2を含めることです...

私は一年前に、これらの線に沿って何かをやって覚えていますが、私の記憶が再び私を失望している...

これについて助けていただければ幸いです...

答えて

0

これはiから判断できる情報である必要があります。だからあなたはURLテンプレートタグの中でそれをまったく必要としません。あなたは既に

問題がある
self.get_object().var2 
+0

を経由してオブジェクトからDetailViewアクセス、それに持っているのでので、私はSomeDetailViewMixin' 'で' get_object'方法を(理由は、私は、外部キーと値のDBを照会している)をオーバーライド..だから、私はこの 'var2'をURL経由で必要としています... – JohnJ

+0

@JohnJ - どうやってそれを無効にしますか?私はそれがあなたがそのスラッグを介して要求する 'i'の同じインスタンスをあなたに与えてくれることを願っています。あなたがURLを介してそれを必要とするなら、私は恐れているURLの一部にする必要があります。 – Sayse

+0

DBなしでDjango私は誰もインスタンスを持っていません。:( – JohnJ