如何获得网站的基本网址?
喜欢 - 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>
就是这样。
答案 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%}而不是对网址进行硬编码。