2013-04-15 94 views
8

我想設計一個回家按鈕爲我的網站,我怎麼可以讓我在模板站點的根目錄路徑,所以我可以做這樣的事情:Django:如何獲取模板中網站的根路徑?

<a href="{{ root_url }}">Go back home</a> 

或者我應該先弄清楚路徑在我的意見,然後將其傳遞給模板來呈現一些上下文。 謝謝。

回答

15

我認爲這裏的正確方法是使用{% url %}標籤和我假設你的url conf中有一個根網址。

urls.py

url(r'^mah_root/$', 'someapp.views.mah_view', name='mah_view'), 

然後在你的模板:

<a href="{% url mah_view %}">Go back home</a> 
+0

謝謝,BTW什麼名稱的網址意味着什麼? – dorafmon

+0

這是命名網址,以便您可以更容易地引用它們。我使用的名字是任意的,所以它沒有任何意義。 –

+0

說我在路徑/ blog/some_8_digit_number下有一堆博客帖子。我怎樣才能用名字來引用他們? – dorafmon

7

您應該能夠訪問請求的get_host()方法:

<a href="http://{{ request.get_host() }}">Go back home</a> 

雖然你很可能也這樣做:

<a href="/">Go back home</a> 
+1

有趣的想法。然而,因爲主頁不必是'/'(它可能是例如'/ home'),那麼我認爲這個問題的解決方案更好。 – freakish

3

我找到了竅門,使用該標籤:

{{ HTTP_HOST }}

你可以這樣做:

<a href="{{ HTTP_HOST }}"> back home <a> 

<a href="{{ HTTP_HOST }}/what_you_want"> back home <a>