python - 在模板 Django 中获取 Site_ID

标签 python django

我为一个拥有许多应用程序的客户构建了一个网站。现在,他注册了一个新的 URL,他希望该 URL 指向同一站点,但他希望更改外观。基本上,他想要为新网站使用新的 home.html 和 base.html。我可以轻松地将新站点添加到设置中,然后更改主页的 View ,以显示新的 home2.html。

但是我该如何做类似的事情,如base.html中的伪代码所示

{% if site_id equals 1 %}

{% include "base1.html" %}

{% endif %}

{% if site_id equals 2 %}

{% include "base2.html" %}
{% endif %}

任何想法。网站上有 100 多个浏览量和近 50 个模型。我无法重新创建模型,也无法乱搞。这需要快速解决。

提前致谢

最佳答案

您可以创建一个上下文处理器来自动将 site_id 添加到上下文:http://docs.djangoproject.com/en/dev/ref/templates/api/#writing-your-own-context-processors

但我会选择不同的解决方案。您只需为每个站点添加一个额外的模板目录,这样 Django 将首先尝试专门针对该站点的模板,如果普通模板不可用,则回退到普通模板。

关于python - 在模板 Django 中获取 Site_ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4501964/

相关文章:

python - Python获取Html页面内容的方法

python - 迁移中的 Django 设置

python - Django 休息框架 : Order by Serializer Method Field

python - 如何在django中自定义{% bootstrap_form form %}?

django - 在 RESTfull 资源中按所有者过滤项目的最佳实践

python - 字节从 py2 到 py3 的行为变化

python - Kivy 声音不循环

python - 列出没有共同公会的 friend ,discord.py 重写

python - 如何在 "Check iO"游戏中使用 tests.py 文件在本地测试代码

python - Django,模型对象未显示在 View 中