2011-08-20 65 views
1

我的模型中有一個包含降價文本的文本字段。我需要將文本轉換爲html並將其顯示在我的.pt模板中。什麼是最好的辦法呢?在模板中顯示文本?

我意識到我可以在我的模型中添加一個方法來轉換字段並返回HTML,然後從我的模板中調用該方法,但是如果不使用此額外方法,只需使用我的降級字段即可模板類似於Django的?

{{ mytext|markdown:"safe" }} 

回答

1

Plone的,它使用TAL爲它的模板引擎,並可以使用結構式文件編程語言,新結構化,和其他富文本格式,完成所有的渲染HTML TAL之外。所以你可能會用你想要的方法吠叫錯誤的樹。

也就是說,TAL有一個有點可擴展的「表達」系統,這就是爲什麼您可以有path表達式(默認)或python表達式。在包含plone的zope世界中,有一個稱爲內容提供者的頁面組合系統,所以有人實現了一個表達式。因此,也許你可以看看這個:

tales.py

configure.zcml

structure關鍵詞依然是你最簡單的選擇。

<div tal:replace="structure view/getMarkdown">rendered markdown</div> 

structure是一種特殊情況下的關鍵字,而不是頁面模板的可擴展部分。

+0

謝謝。據我所知,「結構」只是傳遞文本不變,它不會轉換任何東西。有沒有辦法將文本從降價轉換爲標記? – akonsu

+0

據我所知,變色龍沒有內置的渲染降價支持。 –

+0

有沒有一種方法可以實現自定義關鍵字呢? – akonsu