如何使用“include”标签在 Django 中动态包含模板

2024-01-12

我有 10 个 html 文件,名称分别为 1.html、2.html ..etc 我想要的是根据一个变量,某个文件应该包含在模板中。

e.g.

{% if foo.paid %}
    {% include "foo/customization/{{ foo.id }}.html" %}
{% endif %}

这可能吗 ?因为在包含标签起作用之前, foo.id 没有被翻译。结果它给出了一个错误。如何以不同的方式处理这个问题? 我应该为此创建一个自定义模板标签吗?


你可以这样做添加过滤器 https://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#add and 有声明 https://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#with .

{% if foo.paid %}
    {% with template_name=foo.id|stringformat:"s"|add:".html" %}
        {% include "foo/customization/"|add:template_name %}
    {% endwith %}
{% endif %}

首先你建立一个template_name,其中包括foo.id以字符串格式连接.html。然后你把它传递给include标签,与模板目录的路径连接。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用“include”标签在 Django 中动态包含模板 的相关文章

随机推荐

  • 原因及解决方法如何-[__NSCFConstantString trim]? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我用j2objc 从 爪哇 到obj
  • 消息正文上的 Azure 服务总线订阅筛选器

    我想根据消息的内容创建订阅 这可能吗 我试图摆脱添加自定义属性的麻烦 谢谢 这是不可能的 订阅只能根据标准 系统 和自定义 用户 属性进行过滤 如果正文 有效负载中有需要参与过滤的数据 则需要将其提升到标头
  • 如何使用非交互式身份验证连接到 Power BI API?

    用 C 编码 我正在遵循本指南 https azure microsoft com en us documentation articles resource group authenticate service principal aut
  • webpack dev server 的惰性模式有什么作用?

    我正在运行我的 webpack dev server webpack dev server lazy inline progress colors port 8082 但是 当我的浏览器尝试访问时 会显示 404 错误bundle js 其
  • 编译器构建的语义分析阶段有哪些工具?

    编译器构建可以分为词法分析 语法分析 语义分析等几个阶段 词法分析有Lex Flex等工具 语法分析有Yacc Bison等工具 我只是好奇语义分析阶段有哪些可用的工具 据我所知 没有与语言无关的工具来执行类型检查 如果有的话 它们肯定不会
  • Windows:Numpy mkl_intel_thread.dll

    经过几个小时的尝试和调查 我已经成功解决了这个问题Numpys mkl intel thread dll文件错误 以下内容可能无法解决所有情况 但我会尝试解释我的特定案例的详细信息 以帮助其他遇到相同问题的人 我的问题 当尝试启动 Anac
  • GRUB 是否切换到保护模式?

    我想问一下 启动时将CPU切换到保护模式是GRUB还是Linux内核 我还想问 内核本身 vmlinuz 是 ELF 还是纯二进制格式 谢谢 GRUB does让你进入保护模式 GRUB多重引导规范 版本 0 6 96 第 3 2 节 ht
  • Django 中的静态文件和媒体文件有什么区别?

    我正在转向 Django 1 3 发现媒体和静态文件的这种分离有点令人困惑 这是默认的方式settings py好像 Absolute filesystem path to the directory that will hold user
  • 以编程方式添加过滤器和初始化参数

    我需要将 web xml 的内容复制到 WebAppInitializer class Java 配置类 我已经从 web xml 复制了 YahooFilter 类 请参阅代码 但我不确定如何实用地添加 init params 我已在下面
  • Mongodb 返回旧集合

    router post orders finish function req res next var order id req body order id var user id req body user id var table id
  • 在 Chart.js 图表的 x 轴上仅显示第 n 个刻度线

    我一直在寻找这个问题的解决方案一段时间 但由于大量已删除的文档和该库以前版本的黑客答案 我还没有接近解决方案 我正在使用 ChartJS v2 制作一个图表 x 轴上带有季度月份名称 并且我设置了标签 以便仅显示每 4 个标签 即每年一个
  • 我可以将 UILocalnotification 设置为每个月的最后一天重复吗?

    我想自己尝试一下 但我需要一个月的时间才能确定它是否有效 有人尝试过这个吗 NSDate fireDate Date I want to repeat in this case 31 may localNotification fireDa
  • 在 Javascript 测试中断言对象相等 (chai)

    我需要在 JavaScript 单元测试中断言两点之间相等 var pnt1 x 2 y 3 and var pnt2 x 2 y 3 当我做 assert equal pnt1 pnt2 据说要点不同 我可以从检查中排除对象是不同实例的事
  • std::function 构造函数和 nullptr

    为什么以下代码打印 0 作为输出 include
  • 无法获取系统目录 - hadoop

    使用hadoop多节点设置 1个主站 1个从站 在 master 上启动 start mapred sh 后 我在 TT 日志中发现以下错误 从属 org apache hadoop mapred TaskTracker 无法获取系统目录
  • 我可以覆盖 !important 吗? [复制]

    这个问题在这里已经有答案了 我正在尝试在元素上设置此 CSS background red important 但是当我尝试这样做时 background yellow 它仍然只显示红色而不是黄色 正如我希望的那样 我没有使用外部CSS 我
  • Elasticsearch 对多个索引进行评分

    我有一年中任何季度的索引 index 2015 1 index 2015 2 我的每个索引上都有大约 3000 万个文档 文档有一个文本字段 标题 我的文档排序方法是 1 score 2 创建日期 问题是 在所有索引 index 201 的
  • 压缩和解压缩文件和文件夹

    我需要使用 C C 压缩和解压缩 Windows Mobile 中的目录层次结构 什么是 最简单的库可用吗 我用谷歌搜索了很多次 我发现了一些东西 但我无法继续下去 如果您已经实施或者您了解一些相关内容 请告诉我 对于 NET SharpZ
  • 如何在 cypress.io 测试中可靠地等待页面空闲

    当使用 cypress io 测试 Angular 网页时 检测页面何时完全加载和空闲的最佳 最可靠方法是什么 不仅仅是 onload 事件 需要包括所有 XHR 请求 完成角度摘要循环以及完成所有渲染 包括完成所有动画 原因是 此时我想测
  • 如何使用“include”标签在 Django 中动态包含模板

    我有 10 个 html 文件 名称分别为 1 html 2 html etc 我想要的是根据一个变量 某个文件应该包含在模板中 e g if foo paid include foo customization foo id html e