2010-09-09 55 views
0

我覺得有一個簡單的答案,但我不知道它。django url路徑問題

我有一個應用程序,使用基本模板的HTML鏈接到用戶的主頁「../home/」,但一旦你進入該網站的2個級別,該鏈接無法返回到主頁水平。

例如,用戶登錄並訪問www.yadda.com/home。當用戶從主頁選擇一本書(#35)時,我通過url傳遞書籍ID參數,並轉到www.yadda.com/book/35/將圖書對象呈現在從base.html繼承的模板上。但是,當用戶想要回到主頁時,原始的html鏈接'../home/'(來自base.html)將我置於www.yadda.com/book/home而不是www.yadda.com /家。

在主頁的基礎中的絕對路徑將解決它,但作爲一個Django新手,我相信有一個我不熟悉的更優雅的解決方案。提前致謝。

示例代碼:

urls.py

urlpatterns = patterns('booksite.views', 
    (r'^schedule/(\d+)/$', 'viewBook'), 
    (r'^home/$', 'home'),) 

home.html的

<a href="../book/{{s.id}}"> View This Book</a> 

base.html文件

<a href="../index/">Home Page</a> 

回答

4

在base.html文件,不要使用../index,使用/index/

更好的是,使用{% url ... %}標記來反轉您的網址。

+0

感謝雙方工作很好。出於某種原因,我着迷於控制路徑,忘記了我不需要。 – rich 2010-09-09 16:13:31