如何将链接/ url放入Django的网站主页?

时间:2008-10-22 16:14:41

标签: python django django-urls

在Django模板中,上下文中是否有变量(例如{{ BASE\_URL }}{{ ROOT\_URL }}{{ MEDIA\_URL }}可用于链接到home的网址项目

即。如果Django在项目的根目录中运行,则模板中的变量(我们称之为R){{ R }}将为/。如果根网址是子文件夹http://host/X/,则变量{{ R }}将为/X/(或http://host/X/)。

看起来很简单,但我找不到答案。 :)谢谢!

4 个答案:

答案 0 :(得分:37)

您可以提供用于处理主页名称的URL配置并使用:

urls.py:

from django.conf.urls.defaults import *

urlpatterns = patterns('myproject.views',
    url(r'^$', 'index', name='index'),
)

模板:

<a href="{% url index %}">...

UPDATE:较新版本的Django需要在视图名称周围加上引号:

<a href="{% url 'index' %}">...

Django Book中的这个注释提供了一些关于将应用程序部署到子目录的提示:

http://www.djangobook.com/en/1.0/chapter20/#cn43

答案 1 :(得分:10)

我总是使用像<a href="/">这样的东西(当然,假设你的家就在根)。我似乎记得曾经这样看过一次,并且找不到这条路径的Django变量;无论如何,/似乎很容易。

答案 2 :(得分:4)

在您的管理员中,转到“网站”并设置域名。

context_instance=RequestContext(request)传递给相关模板。

现在在任何这些模板中使用{{ SITE_URL }},你就是金色的。

Chapter 10 of the Django Book提供的信息多于您需要重新登记上下文处理器位的信息。

答案 3 :(得分:1)

(r'^$', 'django.views.generic.simple.redirect_to', {'url': '/home/'}),

工作正常:)