在Django模板中,可以使用自定义的模板过滤器来实现字符串的拆分。以下是一个简单的示例,演示如何根据特定的分隔符拆分字符串并在模板中显示。
首先,在Django应用的templatetags目录中,创建一个Python模块,例如extras.py,并定义拆分字符串的模板过滤器:
在你的 Django 应用目录下创建 templatetags
目录(和templates同目录
)和这个文件
example_app/templatetags/extras.py
from django import template
register = template.Library()
@register.filter(name='split')
def split_filter(value, arg):
"""
Custom template filter to split a string by a delimiter.
:param value: String to split.
:param arg: Delimiter to use.
:return: List of strings.
"""
return value.split(arg)
然后建一个模块标记空文件_init_.py
,再在模板中加载这个过滤器并使用它:
{% load extras %}
{% with my_string="one,two,three" %}
- {% for item in my_string|split:"," %}
- {{ item }}
- {% endfor %}
{% endwith %}
在这个例子中,my_string
是要拆分的字符串,分隔符是逗号(,
)。split
过滤器按照逗号将字符串拆分,并在for循环中遍历每个元素,创建一个无序列表。