Django 1.10 - 获取网站基本网址

时间:2016-11-24 18:34:24

标签: python django

如何获得网站的基本网址?

喜欢 - https://stackoverflow.com/

我很想将它设置为settings.py

由于

答案:

非常抱歉这么糟糕的问题。 :(

我试图通过以下代码链接帖子 -

<a href="questions/{{ related_question.id }}">{{ related_question.question_text }}</a>

它从当前页面网址中获取,但我期望从基本网址开始。我想,我会得到一个类似Wordpress的site_url()解决方案,可以在settings.py中使用它。

但我不必这样做。从href开始/....从基本网址开始。因此,以上<a>标记应为 -

<a href="/questions/{{ related_question.id }}">{{ related_question.question_text }}</a>

就是这样。

1 个答案:

答案 0 :(得分:0)

我建议您编写自己的模板上下文处理器,它将从您的设置文件中返回SITE_URL。

请参阅https://docs.djangoproject.com/en/1.10/ref/templates/api/#writing-your-own-context-processors

您的函数只需返回一个字典,例如{&#34; SITE_URL&#34;:settings.SITE_URL},然后您的所有模板都会有&#34; SITE_URL&#34;在上下文中。

另一种选择是向问题模型添加方法,例如get_url()返回带有slug的站点url,然后在模板中使用related_question.get_url。

你应该使用&#34; url&#34;模板中的标记,例如{%url&#39; question&#39; related_question.id%}而不是对网址进行硬编码。