2013-10-02 105 views
0

我創建了我自己的Django CMS博客插件。我使用佔位符來保存博客條目的全部內容,並試圖找出如何自動創建此佔位符的摘錄。截斷Django CMS佔位符

如果它只是一個文本字段,我知道我可以在模板中使用「| truncatechars:15」,但我不知道如何爲佔位符執行此操作。

有什麼我可以用在模板或'views.py'爲了截斷佔位符?

在此先感謝。

回答

2

正如您所見,您不能截斷佔位符,因爲佔位符的工作僅僅是渲染添加到其中的內容插件。

您唯一可行的選擇是截斷插件渲染模板中的字段,或在模型上添加單獨的字段以存儲截斷的文本。可以使用post_save信號處理程序自動填充這樣的字段。

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; 
} 

最終的結果是這樣的:

您的內容爲...