在Django中截断文本但向后方向
Posted
技术标签:
【中文标题】在Django中截断文本但向后方向【英文标题】:Truncate Text But in Backward Direction in Django 【发布时间】:2016-03-18 23:29:28 【问题描述】:我有myString = "Get the last nine characters of this text, starting with the last one."
,我希望能够像使用 myString|truncatechars:9
获得前九个字符一样获得Django 模板中的最后九个字符。
知道如何完成这项工作吗?
【问题讨论】:
【参考方案1】:您可以编写自己的过滤器。
@register.filter("truncate_chars")
def truncate_chars(value, max_length):
if len(value) > max_length:
#will return last characters if max_length<0
truncd_val = value[max_length:]
if not len(value) == max_length+1 and value[max_length+1] != " ":
truncd_val = truncd_val[:truncd_val.rfind(" ")]
return truncd_val + "..."
return value
然后
myString|truncate_chars:-9
Look at here.
【讨论】:
myString|truncatechars:9 表示我们要保留 9 个字符并删除所有其他字符。使用切片,我们可以删除 9 个字母并保留所有其他字母。 slice 和 truncatechars 有很大的区别。 @SavadKP 很抱歉被误解了。请查看修改后的版本。以上是关于在Django中截断文本但向后方向的主要内容,如果未能解决你的问题,请参考以下文章