我的模型中有一个包含降价文本的文本字段。我需要将文本转换为html并在我的.pt
模板中显示。最好的方法是什么?
我意识到我可以为我的模型添加一个方法来转换字段并返回HTML,然后从我的模板中调用该方法,但是如果没有这个额外的方法,我可以通过仅使用模板中的markdown字段来实现类似于Django的?
{{ mytext|markdown:"safe" }}
答案 0 :(得分:1)
Plone,它使用TAL作为它的模板引擎,可以使用StructuredText,reStructuredText和其他富文本格式,在TAL之外进行所有渲染到HTML。所以你可能会在你想要的方法中咆哮错误的树。
也就是说,TAL有一个可扩展的“表达式”系统,这就是为什么你可以有path
个表达式(默认)或python
表达式的原因。在包含plone的zope世界中,有一个称为内容提供者的页面组合系统,因此有人实现了provider
tal表达式。所以也许你可以看看:
structure
关键字仍然是您最简单的选择。
<div tal:replace="structure view/getMarkdown">rendered markdown</div>
但是structure
是一个特殊的案例关键字,而不是页面模板的可扩展部分。