2016-09-28 185 views
0

我正在製作個人網站。我有一個博客頁面(site.com/blog),裏面有我的博客文章列表。如果我想檢查一篇博客文章夠簡單,我可以點擊它和代碼:管理django網址

 <a href="/blog/{{ obj.id }}"><h1>{{ obj.topic_title }}</h1></a> 

會讓我那裏。另外,如果我想要轉到我的聯繫人頁面(site.com/contacts)。很容易,我點擊導航型針按鈕,我去那裏

    <a href="/contacts">Contacts</a> 

,但如果我進入一個博客帖子(site.com/blog/1),我使用的是相同的模板,如果我想去我的聯繫人頁面我必須再次點擊

    <a href="/contacts">Contacts</a> 

鏈接,但將端口我到一個404頁site.com/blog/contacts。如何處理這個問題,而不會對每一頁進行編碼

回答

2

使用內置的Django url模板標籤,該標籤採用視圖名稱並返回一個絕對路徑。

返回與給定視圖和可選參數匹配的絕對路徑引用(沒有域名的URL)。

您可以給它一個視圖名稱及其任何視圖參數。這比你如何鏈接到博客頁面好得多:

{% url 'blog-view-name' obj.id %} 

這可以確保如果你改變你觀點的結構,它仍然不會打破你的鏈接。

+0

您能否請您發送一些資源,我不太明白您的意思 – Harton

+0

@Harton我在回答中鏈接了Django文檔,這應該會讓您走上正軌。 – brianpck

+0

好的,所以在我的聯繫人頁面我有這個* def索引(請求): \t返回呈現(請求,「contacts/contacts.html」)*這工作完全正常的頁面,但如果在另一個應用程序,我有一些視圖名稱(索引)的東西會變得凌亂? – Harton