gpt4 book ai didi

python - django模板: include and extends

转载 作者:IT老高 更新时间:2023-10-28 21:08:01 28 4
gpt4 key购买 nike

我想在 2 个不同的基础文件中提供相同的内容。

所以我正在尝试这样做:

page1.html:

{% extends "base1.html" %}
{% include "commondata.html" %}

page2.html:

{% extends "base2.html" %} 
{% include "commondata.html" %}

问题是我似乎无法同时使用扩展和包含。有没有办法做到这一点?如果没有,我该如何完成上述操作?

commondata.html 覆盖在 base1.html 和 base2.html 中指定的 block

这样做的目的是提供 pdf 和 html 格式的相同页面,其中格式略有不同。上面的问题虽然简化了我正在尝试做的事情,但如果我能得到答案,它将解决我的问题。

最佳答案

当你使用扩展模板标签时,你是说当前模板扩展了另一个模板——它是一个子模板,依赖于一个父模板。 Django 将查看您的子模板并使用其内容填充父模板。

您想在子模板中使用的所有内容都应该在 block 中,Django 使用它来填充父模板。如果您想在该子模板中使用 include 语句,您必须将它放在一个 block 中,以便 Django 理解它。否则它就没有意义,Django 也不知道如何处理它。

Django 文档中有一些非常好的使用 block 替换父模板中的 block 的示例。

https://docs.djangoproject.com/en/dev/ref/templates/language/#template-inheritance

关于python - django模板: include and extends,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1408925/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com