截断Django CMS占位符

时间:2013-10-02 05:40:24

标签: python django django-templates django-cms

我正在创建自己的Django CMS博客插件。我正在使用占位符来保存博客条目的完整内容,我正在尝试弄清楚如何自动创建此占位符的摘录。

如果它只是一个文本字段,我知道我可以在模板中使用“| truncatechars:15”,但我不知道如何为占位符执行此操作。

我是否可以在模板或'views.py'中使用以截断占位符?

提前致谢。

2 个答案:

答案 0 :(得分:2)

正如您所见,您不能截断占位符,因为占位符的工作只是呈现添加到其中的内容插件。

唯一可行的选择是截断插件的渲染模板中的字段,或者在模型上添加可以存储截断文本的单独字段。可以使用post_save信号处理程序自动填充此类字段。

答案 1 :(得分:0)

当我不能使用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;
}

最终结果如下:

  

你的内容......