在我们的项目中,我们广泛使用引导部件模块。Django模板可重用性
<div class="widget">
<header>
<div class="pull-left">
<h2><i class="fa fa-shopping-cart"></i>product-list</h2>
</div>
<div class="pull-right">
<a class="btn btn-default btn-sm toggle-widget" href="#">
<i class="fa fa-minus"></i>
</a>
</div>
</header>
<div class="inner-padding">
...............
</div>
</div>
<div class="widget">
<header>
<div class="pull-left">
<h2><i class="fa fa-user"></i>
user info
</h2>
</div>
<div class="pull-right">
<a class="btn btn-default btn-sm toggle-widget" href="#">
<i class="fa fa-minus"></i>
</a>
</div>
</header>
<div class="inner-padding">
.............
</div>
</div>
我们重复这些代码。我的问题是,如何编写模板并使这些代码可重用。
如果我作出这样一个子模板:
<div class="widget">
<header>
<div class="pull-left">
<h2><i class="fa {{ icon }}"></i>
{{ title }}
</h2>
</div>
<div class="pull-right">
<a class="btn btn-default btn-sm toggle-widget" href="#">
<i class="fa fa-minus"></i>
</a>
</div>
</header>
<div class="inner-padding">
{% block content %}
{% endblock %}
</div>
</div>
我可以使用{%包含%}包含模板:
{% include "sub-template.html" with icon="..." title="..." %}
但我怎么能呈现 '块内容'? 此外,我们还可以包括该子template.html多次在一个模板:
{% include "sub-template.html" with icon="1" title="user-info" %}
{% include "sub-template.html" with icon="2" title="product-list" %}
我觉得这是一个很常见的情况,但我无法找到使用Django模板的解决方案。有没有人可以给我一些建议?
“块内容”究竟发生了什么? – AKS
@AKS,根据标题和页面不同的东西,其中包括子模板。 – Leon