2011-11-04 71 views
0

在urls.py:Django的變量:申報網址

(r'^bbb/id(?P<user_id>[0-9]+)/$', 'django.views.generic.simple.direct_to_template, 
    {'template': 'some.html', 'extra_context': {'user_id': user_id}}), 

在some.html:{{ user_id }}

但有一個錯誤:name 'user_id' is not defined (in urls.py)

那麼,如何聲明變量urls.py並直接發送到'some.html'?

謝謝。

回答

6

你不需要把它放在extra_context。它已被捕獲到URL中,因此出現在模板params字典中:{{ params.user_id }}

請參閱the documentation - 還要注意,這些舊的基於函數的通用視圖已被棄用,您應該使用基於類的TemplateView

+0

非常感謝! –

0

該變量確實沒有在該Python代碼中聲明。 :)你不需要在視圖上下文中設置這個變量。該視圖將接收與** kwargs相匹配的命名匹配。

+0

但正如你所看到的我使用通用視圖...如何直接發送到模板? –