什么时候特别扩展模板以及什么时候使用include?是包括任何使用的内容,如用户个人资料部分(如关于我在我们网站的角落)?
qrjkbowd1#
扩展允许您替换块(例如“内容”),而不是包括构建页面的部分(例如,“header”和“footer”)。这允许您拥有包含完整布局的单个模板,并且您仅通过替换块来“插入”其他模板的内容。如果用户配置文件在所有页面上都使用,您可能希望将其放在由其他人扩展的基本模板中,或者将其包含到基本模板中。如果您只想在很少的页面上显示用户配置文件,您也可以将其包含在这些模板中。如果用户配置文件是相同的,除了在几个页面上,把它放在你的基本模板内的一个块,然后可以在那些需要不同配置文件的模板中替换。
0md85ypi2#
查看Django模板的继承性。扩展父模板的“包含”排序,然后可以覆盖它的不同功能的一部分。Include在当前上下文中呈现模板。
6tqwzwtp3#
extends创建“父子关系”。在扩展的情况下,可能会覆盖父功能。而include只是呈现html响应。
ttvkxqim4#
使用% include ... with参见文档允许覆盖包含页面中的变量。所以不能同意穆罕默德-阿维斯-本-马吉德的回答。假设这两个子句只是表示页面构造的不同方式:1.扩展-像页面的外部 Package 器一样使用,
% include ... with
lxkprmvk5#
{% extends %}:
{% extends %}
因此,基本上,您应该将许多页面上使用的常规布局组件(如{% block title %},{% block header %},{% block navigation-bar %},{% block main %}和{% block footer %})放入基础模板(如base.html)中,然后在主模板(如index.html)中使用{% extend %}扩展base.html。{% include %}:
{% block title %}
{% block header %}
{% block navigation-bar %}
{% block main %}
{% block footer %}
base.html
index.html
{% extend %}
因此,基本上,您应该将几个页面上使用的不规则布局组件放置到index.html等主模板中,除了base.html等基础模板。
{% include %}
{% block %}
5条答案
按热度按时间qrjkbowd1#
扩展允许您替换块(例如“内容”),而不是包括构建页面的部分(例如,“header”和“footer”)。这允许您拥有包含完整布局的单个模板,并且您仅通过替换块来“插入”其他模板的内容。
如果用户配置文件在所有页面上都使用,您可能希望将其放在由其他人扩展的基本模板中,或者将其包含到基本模板中。如果您只想在很少的页面上显示用户配置文件,您也可以将其包含在这些模板中。如果用户配置文件是相同的,除了在几个页面上,把它放在你的基本模板内的一个块,然后可以在那些需要不同配置文件的模板中替换。
0md85ypi2#
查看Django模板的继承性。
扩展父模板的“包含”排序,然后可以覆盖它的不同功能的一部分。
Include在当前上下文中呈现模板。
6tqwzwtp3#
extends创建“父子关系”。在扩展的情况下,可能会覆盖父功能。而include只是呈现html响应。
ttvkxqim4#
使用
% include ... with
参见文档允许覆盖包含页面中的变量。所以不能同意穆罕默德-阿维斯-本-马吉德的回答。假设这两个子句只是表示页面构造的不同方式:
1.扩展-像页面的外部 Package 器一样使用,
也可以只在链式嵌套中使用几个扩展页面,但是包含允许我们一个接一个地使用几个包含的页面,而不仅仅是在链式嵌套中。
lxkprmvk5#
{% extends %}:
{% extends %}
。因此,基本上,您应该将许多页面上使用的常规布局组件(如
{% block title %}
,{% block header %}
,{% block navigation-bar %}
,{% block main %}
和{% block footer %}
)放入基础模板(如base.html
)中,然后在主模板(如index.html
)中使用{% extend %}
扩展base.html
。{% include %}:
因此,基本上,您应该将几个页面上使用的不规则布局组件放置到
index.html
等主模板中,除了base.html
等基础模板。{% extends %}
,{% include %}
和{% block %}
的好例子。