控制回路内的逃生字段

时间:2013-12-17 16:45:34

标签: silverstripe

SilverStripe的新手,并试图让事情变得有效。

我在页面中有一个字段,用于存储一些HTML代码。当您查看其“持有者”页面时,它会遍历每个子页面并显示所有子页面。我遇到的问题是当我输出值时它会逃避它 - 所以我需要能够解码它。

<% control Children %>
    <h2>$Title </h2>
    $ExtraHtmlBody <!-- This is escaping when outputting -->
 <% end_control %>

所以我尝试在我的Page_Controller中添加一个函数,但似乎我无法从Control循环中调用Page_Controller方法。我尝试将该函数移动到Page类中,但它似乎没有$ this-&gt; ExtraHtmlBody的任何数据。也许我做错了什么。

1 个答案:

答案 0 :(得分:2)

您的数据可能已在数据库中转义。你检查了吗?

像@munomono所说,如果你要存储html使用HTMLTextHTMLVarchar。 您还可以尝试使用$ExtraHtmlBody.RAW在模板中停用自动转义功能(风险自负)。

这里有一些信息:

您的控制器功能问题可能只是一个范围问题,因为<% loop %>更改了范围,$Up / $Top可能有所帮助。但是你可能还不需要那个功能。