2010-09-09 88 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