如何将链接/ url放入Django的网站主页?
-
03-07-2019 - |
题
在Django模板中,上下文中是否有变量(例如{{ BASE\_URL }}
,{{ ROOT\_URL }}
或{{ MEDIA\_URL }}
可以用来链接到项目的home
url?
即。如果Django在项目的根目录中运行,则模板中的变量(让我们称之为R){{ R }}
将是/
。如果根URL是子文件夹http://host/X/
,则变量/X/
将<=>(或<=>)。
看起来很简单,但我找不到答案。 :)谢谢!
解决方案
您可以提供用于处理主页名称的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中的这个注释提供了一些关于将应用程序部署到子目录的提示:
其他提示
我总是使用像<a href="/">
这样的东西(当然,假设你的家就在根)。我似乎记得曾经这样看过一次,并且找不到这条路径的Django变量;无论如何,/
似乎很容易。
在您的管理员中,转到<!>“; sites <!>”;并设置域名。
将context_instance=RequestContext(request)
传递给相关模板。
现在在任何这些模板中使用{{ SITE_URL }}
,你就是金色的。
Django Book第10章提供的信息超出了您的需求注册上下文处理器位。
(r'^$', 'django.views.generic.simple.redirect_to', {'url': '/home/'}),
工作正常:)
不隶属于 StackOverflow