模板过滤器修剪任何前导或尾随空白
你可以自己做
from django import template
from django.template.defaultfilters import stringfilter
register = template.Library()
@register.filter
@stringfilter
def trim(value):
return value.strip()
Django templates允许您通过使用访问方法和属性 ''语法:
{{ var.example.strip }}
您可以通过链接其他过滤器,当你处理HTML扩展此,如:
{{ var.example.strip|safe|removetags:"p img" }}
在这里,我们首先删除任何<p>
和<img>
标签,然后告诉Django它可以安全地渲染剩下的内容,我们已经删除了任何空格。
是否有文件记录或是否是一种非官方的技巧? – Medorator 2014-06-08 11:26:44
它不是Django函数,但是是Python的。这里记录:https://docs.python.org/2/library/stdtypes.html#str.strip。 Django模板变量的文档:https://docs.djangoproject.com/en/dev/ref/templates/language/#variables – maciek 2015-08-24 10:44:29
一个评论 - 'removetags'过滤器从django 1.10被删除,所以要小心 – Jerzyk 2016-07-01 15:29:39
任何访问这里的人都应该看看Ibatteau的解决方案,它更简单 - 只需在模板本身内使用.strip(不需要注册新的过滤器)。 – bryn 2013-07-22 23:02:09
使用'{{var.example.strip}}'确实更简单,但是这里的解决方案也有其用处。例如,它允许你执行'{%filter trim%} {%someothertag%} {%endfilter%}',这是不可能的。 – jlh 2016-06-16 09:04:09