将宏添加到您的django模板中
项目描述
django-templates-macros
将宏添加到您的django模板中
起源
此应用程序的原始代码来自MattP在https://djangosnippets.org/snippets/2892/上的代码片段。
此代码片段引用了
Based on snippet by Michal Ludvig <michal@logix.cz> http://www.logix.cz/michal http://djangosnippets.org/snippets/363/ Extended for args and kwargs into templatetags/kwacro.py by Skylar Saveland <michal@logix.cz> http://skyl.org https://gist.github.com/skyl/1715202 Modified to support rendering into context by matt@peloquin.com
在哪里
您可以在以下位置找到此包
使用方法
将此应用程序“宏”添加到您的INSTALLED_APPS中
在您的模板中加载库
{% load macros %}
定义一个新的名为“my_macro”的宏,它接受参数和/或关键字参数,所有这些都是可选的
{% macro my_macro arg1 arg2 baz="Default baz" %} {% firstof arg1 "default_arg1" %} {% if arg2 %}{{ arg2 }}{% else %}default_arg2{% endif %} {{ baz }} {% endmacro %}
使用宏与字符串参数或上下文变量
{% usemacro my_macro "foo" "bar" baz="KW" %} <br> {% usemacro my_macro num_pages "bar" %}
渲染如下
foo bar KW 77 bar Default baz
或者将您的宏保存到单独的文件中,例如“mymacro.html”,然后使用以下方式将其加载到当前模板中
{% loadmacros "mymacros.html" %} Then use these loaded macros in as described above.
请注意,定义和加载的宏是每个模板文件本地的,并且不会通过 {% extends … %} 标签继承。
当需要递归宏时,请使用“recurse_macro”模板标签
{% macro MENU entries %} <ul> {% for entry in entries %} <li> <a href="{{ entry.link }}"> {{ entry.label }} </a> {% if entry.children %} {% recurse_macro MENU entry.children %} {% endif %} </li> {% endfor %} </ul> {% endmacro %} {% usemacro MENU menu.children %}
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源代码分发
django-templates-macros-0.3.tar.gz (5.1 kB 查看哈希值)
构建分发
关闭
django-templates-macros-0.3.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d67e05b014201b8512eec2e106a9341a49e7691b7b83e6679b40ee9630a2e80e |
|
MD5 | 72f4026561fe90b3bdb82b51ae877e1e |
|
BLAKE2b-256 | c75c41cfe5b1a49df4f9b64fb9ca9aac4362faa079665af5bfaf399985f09eac |
关闭
django_templates_macros-0.3-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | aadee18b13086c98860a870716f4c0b134eeadb4f89f626ef074e1872ff41ea7 |
|
MD5 | fd08b9fdc66f6328212b03c1b2c0934a |
|
BLAKE2b-256 | d9a6248cc57d4717e2bf9c9ff36d745a14da7d42d16099a60d22a590c2552607 |