首页 > 解决方案 > django 自定义截断字符

问题描述

我正在使用 truncatechars 但它有问题;例如,内容是:

Lorem Ipsum 不仅仅是随机文本。它起源于一部古典拉丁文学作品

使用truncatechars:160( {% block description %}{{ content|truncatechars:160 }}{% endblock %}) 我得到

Lorem Ipsum 不仅仅是随机文本。它源于一段古典拉丁文学作品

我想要这样:

Lorem Ipsum 不仅仅是随机文本。它源于一段古典拉丁语

IE。如果该单词在该单词结尾之前已达到 160 个字母的限制,则不要包含该单词。

标签: djangodjango-views

解决方案


内置过滤器truncatecharstruncatewords模板过滤器不直接支持此功能,因此您必须编写自己的过滤器

幸运的是,这不是很困难 - 基础知识在上面,您可以按照内置truncatechars过滤器的功能并添加一些简单的逻辑来删除最后一个单词。


推荐阅读