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

2024-09-22 16:38:35 发布

您现在位置:Python中文网/ 问答频道 /正文

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

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

这似乎很简单,但我找不到答案。:)谢谢!


Tags: 项目django答案文件夹模板httphosturl
3条回答

我总是使用类似<a href="/">(当然,假设你的家在根目录下)。我似乎还记得曾经查找过这个,但找不到这个路径的Django变量;无论如何,/看起来非常简单。

在管理员中,转到“站点”并设置域。

context_instance=RequestContext(request)传递给有问题的模板。

现在在这些模板中使用{{ SITE_URL }},你就是黄金。

Chapter 10 of the Django Book包含的信息比恢复上下文处理器位所需的信息多。

您可以为用于处理主页的URL配置指定一个名称,并使用该名称:

网址.py:

from django.conf.urls.defaults import *

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

模板:

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

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

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

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

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

相关问题 更多 >