2014-05-03 29 views
0

我想以直观的方式组织我的Django模板,但我遇到了一些问题。我有一个基础模板,其中包含的所有内容包括用于CSS文件,JS文件等的块。我还有一个由所有窗体使用的模板,其中包括字段块等。在Django中合并这些基本模板的正确方法?

现在我添加一个“最小“的模板,它将作为”最小“页面的基本模板。一个小问题:我需要从表单模板中派生出来。

这里有一个地图,以帮助解释这是怎么回事:

enter image description here

起初,我以为我可以做形式的include -ed模板解决这个问题。这有一个非常严重的缺点:我无法在表单模板中覆盖{% block %}

那么如何创建一个包含minimal.htmlform.html块的模板(minimal_form.html),并仍然可以覆盖任一模板中的块?

回答

1

稍微不同的策略是做这样的事情在form.html通过上下文变量,base_template = 'minimal.html'从您的视图(或上下文处理器),并参考像这样:

{% extends base_template %} 
+0

嘿,现在这是一个想法。 .. –

+1

...它的工作就像一个魅力。谢谢! –

相关问题