Django使用模板标签拆分文本字段

cdipaolo

我知道我可以使用{{value | truncatewords:x}}在给定数目的单词之后截断文本字段。如果我想在文本之间夹一些东西,是否可以使用截短的部分后缀?就像在python中使用字符串一样

>>>string[:2]
>>>something in between
>>>string[2:]

但是使用模板标签,因为我正在遍历for循环并且无法通过我的视图传递它?

谢谢

ec

您将需要一个自定义模板过滤器

这是一个基于truncatewords()过滤器实现的简单示例

from django import template
from django.template.defaultfilters import stringfilter
from django.utils.text import Truncator

register = template.Library()

@register.filter(is_safe=True)
@stringfilter
def sandwich(value, args):
    length, cutlet = args.split(',')
    length = int(length)
    truncated_value = Truncator(value).words(length, truncate='')
    return ' '.join([truncated_value, cutlet, value[len(truncated_value):].strip()])

输出示例:

>>> from django.template import Template, Context
>>> template = Template('{% load filters %}{{ value|sandwich:"2,magic" }}')
>>> context = Context({'value': 'What a wonderful world!'})
>>> template.render(context)
u'What a magic wonderful world!'

请注意,Django不允许在模板过滤器中传递多个参数-这就是为什么将它们作为逗号分隔的字符串传递然后进行解析的原因。在此处查看有关此想法的更多信息:如何在Django模板的自定义模板过滤器中添加多个参数?

另外,如果仅在字符串中传递了一个参数,而该length值无法转换为intetc ,则可能需要捕获可能的异常

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Django模板标签拆分列表

来自分类Dev

文本字段中的Django自定义标签

来自分类Dev

使用jQuery将1个输入文本字段拆分为3个文本输入字段

来自分类Dev

在xsl中的标签之间拆分文本

来自分类Dev

在文本字段中仅可见部分文本

来自分类Dev

将标签与文本字段对齐

来自分类Dev

文本字段连接和标签

来自分类Dev

使用字段和文本分隔符拆分文本

来自分类Dev

JavaFX中的可复制标签/文本字段/标签文本

来自分类Dev

JavaFX中的可复制标签/文本字段/标签文本

来自分类Dev

使用Angular模板参考将动态值附加到动态文本字段

来自分类Dev

使用Flask / Jinja2模板填充表单。输入文本字段被截断数据

来自分类Dev

带有选项的 Django 文本字段

来自分类Dev

优化 Django 文本字段查找

来自分类Dev

使用 {{Text}} 格式的 Javascript 拆分文本

来自分类Dev

将文本从文本字段复制到textarea +标签

来自分类Dev

将文本从文本字段复制到textarea +标签

来自分类Dev

ApplescriptObjC-在标签上显示文本字段文本

来自分类Dev

使用多个分隔符拆分水晶报表文本字段并加载到不同字段

来自分类Dev

没有标签视图使用android:labelFor =“ @ + id / @ + id /”属性指向此文本字段

来自分类Dev

使用javascript将值添加和减去到HTML标签或文本字段

来自分类Dev

在文本字段中使用更改事件

来自分类Dev

使用文本字段编辑JTree的节点

来自分类Dev

在文本字段中使用if / else吗?

来自分类Dev

尝试使用JavaScript清除文本字段

来自分类Dev

使用jQuery添加文本字段值

来自分类Dev

使用jQuery添加多文本字段

来自分类Dev

使用Jquery限制文本字段

来自分类Dev

使用uidatepicker设置文本字段值

Related 相关文章

热门标签

归档