一套django模板工具。
django_template_goodies的Python项目详细描述
一套简单的工具,可以让你在django模板中的生活更轻松。 基于伟大的django-classytags库。
安装
- 安装软件包
$> pip install django-template-goodies
- 将“模板”放入已安装的应用程序中。
用法:使用&def_block渲染并使用_block
这是一种类似宏的解决方案,允许您定义基 看起来总是一样的模板,里面只填充一个“块” 不一样。
假设您有部分模板person_wrapper.html:
{% load goodies %} <div class="person-wrapper"> <div class="first-name">{{ first_name }}</div> {% use_block "block" %} </div>
您可以按以下方式使用:
{% load goodies %} {% render_with "person_wrapper.html" first_name="First" last_name="Last" %} {% def_block "block" %} <div class="last-name">{{ last_name }}</div> {% end %} {% end %}
此调用将在 person_wrapper.html,内容位于“{%def_block….”中。%}” 和“{%end%}”insidee“render_with”。所以以上的结果将是 或多或少:
<div class="person-wrapper"> <div class="first-name">First</div> <div class="last-name">Last</div> </div>
另一个带有tables的示例table.html:
{% load goodies %} <table class="{{ opts.table_class }}"> <thead> <tr> {% use_block "headers" %} </tr> </thead> <tbody> {% for row in object_list %} <tr> {% use_block "row" %} </tr> {% endfor %} </tbody> </table>
可按以下方式使用:
{% render_with "table.html" object_list=people %}{% def_block "headers" %} <td>ID</td> <td>First name</td> <td>Last Name</td> <td>Age</td> {% end %}{% def_block "row" %} <td>{{ forloop.counter }}</td> <td>{{ row.first_name }}</td> <td>{{ row.last_name }}</td> <td>{{ row.age }}</td> {% end %}{% end %}
用法:dict
在模板内更新或创建词典。你可以用各种各样的 如果需要,变量上的筛选器数:
{% load goodies %} {% dict opts name="first"|title %} {% dict opts last_name="last" value=opts.name %} {{ opts.first }} - {{ opts.last_name}} || {{ opts.value }}
结果大致如下:
First - last || first
要求
- Django类标签