gjb*_*gjb 11 django django-templates
我已经阅读了文档,两者似乎都达到了相同的目标:渲染一个模板,传递一个上下文或变量.
dge*_*gel 14
它们用于不同的目的.该include标签简单地包括从整体和未修改的现有模板的内容.自定义包含标记将上下文传递给一个函数,该函数可以包含在将上下文传递给模板之前操作上下文的逻辑.
例如,也许我有一个将在多个页面上显示的面板.面板的模板需要通过上下文将一些特定查询传递给它.包含面板的页面不需要其他任何上下文变量.如果我将面板模板包含在include标签中,我将不得不在包含面板的每个视图中编写这些查询,并将它们作为上下文变量传递.
或者,我可以编写一个包含查询的自定义包含标记,并将它们传递给面板的模板.通过使用自定义包含标记,我不需要重复代码来在包含面板的每个视图中生成其上下文.我的视图将包含更少的代码,并且不会被面板使用的上下文变量混乱.
虽然您是正确的,因为简单地传递上下文的自定义包含标记将与include标记相同.
需要将模板分成较小的文件吗?使用include标签(用于可读性和可维护性以及DRY)
在渲染模板之前需要包含更多代码吗?使用包含标签(获取更多数据,添加一些业务逻辑......它真的像另一个小的无网页视图.它就像一个模板功能).
| 归档时间: |
|
| 查看次数: |
1360 次 |
| 最近记录: |