2010-09-06 26 views
0

在本网站上提出过类似的问题,但是当我尝试在郊区托管我的网站时,我的网站定位标记将如何替换。使用mod_wsgi进行Sub Url的Django

E.g. 我的域名是www.example.com 和我的郊区,它映射到Django安装www.example.com/2010/registration 现在,因为我的模板(链接)中的锚标记是' /'(引用根)成功的URL的其余部分链接不包含在www.example.com内。 因此,举例来说,如果我的锚标记的形式为

<a href='/profile'>Profile</a> 

然后在网站上我的锚标记www.example.com/profile成为成为www.example.com/2010/registration/profile/代替

是否有任何可能的方法来解决这个问题?

感谢, 尼廷

回答

2

有可在模板中使用,以确保正确的前缀添加标签。通过阅读开始:

http://docs.djangoproject.com/en/1.2/ref/templates/builtins/#url

+0

我在视图中使用的HttpResponseRedirect如何?我是否需要手动将它们替换为绝对网址? – niting 2010-09-07 06:08:55

+0

@niting:不,你不需要用绝对URL替换它们。你会更好地命名你的URL并使用'reverse()'而不是绝对URL。 – 2010-09-07 07:49:53

+0

非常感谢你们,我想把两个答案都记录下来:D – niting 2010-09-07 08:49:29

1

正如格雷厄姆说,使用{% url %}标签在你的模板。在视图中,使用等效的reverse()函数。见the documentation