截断文本但在Django中向后移动

时间:2015-12-13 12:02:06

标签: django django-templates

我有myString = "Get the last nine characters of this text, starting with the last one."我希望能够以{{ myString|truncatechars:9 }}获得前九个字符的方式获取Django模板中的最后九个字符。

关于如何完成这项工作的任何想法?

1 个答案:

答案 0 :(得分: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.