sbe*_*all 7 python customization jinja2
如何最有效地为Jinja2编写自定义过滤器,适用于内置"排序"过滤器之类的迭代,用于模板中的for循环?
例如:
{% for item in iterable|customsort(somearg) %}
...
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
Cam*_*ron 14
与编写任何其他过滤器的方式相同.这是一个可以帮助您入门的示例:
from jinja2 import Environment, Undefined
def custom_sort(iterable, somearg):
if iterable is None or isinstance(iterable, Undefined):
return iterable
# Do custom sorting of iterable here
return iterable
# ...
env = Environment()
env.filters['customsort'] = custom_sort
Run Code Online (Sandbox Code Playgroud)
在成为问题之前不要担心效率.在任何情况下,模板引擎都不太可能成为瓶颈.
| 归档时间: |
|
| 查看次数: |
7193 次 |
| 最近记录: |