我正在创建自己的 Django CMS 博客插件。我正在使用占位符来保存博客条目的全部内容,并且我正在尝试弄清楚如何从该占位符中自动创建摘录。
如果它只是一个文本字段,我知道我可以在模板中使用“|truncatechars:15”,但我不知道如何为占位符执行此操作。
我可以在模板或“views.py”中使用什么来截断占位符吗?
提前致谢。
我正在创建自己的 Django CMS 博客插件。我正在使用占位符来保存博客条目的全部内容,并且我正在尝试弄清楚如何从该占位符中自动创建摘录。
如果它只是一个文本字段,我知道我可以在模板中使用“|truncatechars:15”,但我不知道如何为占位符执行此操作。
我可以在模板或“views.py”中使用什么来截断占位符吗?
提前致谢。
如您所见,您不能截断占位符,因为占位符的工作只是渲染添加到其中的内容插件。
您唯一可行的选择是截断插件渲染模板中的字段,或者在模型上添加一个单独的字段来存储截断的文本。post_save
可以使用信号处理程序自动填充这样的字段。
当我不能使用 django truncatechars 时,我更喜欢的方式是使用 CSS 来解决这个问题。
假设在渲染占位符后,您将拥有如下内容:
<html>
<body>
<div class="text">Your content from placeholder</div>
</body>
</html>
在您的 CSS 中添加以下内容:
div.text {
width: 120px;
text-overflow: ellipsis;
white-space:nowrap;
overflow:hidden;
}
最终结果将如下所示:
您的内容来自...