Html symfony2小枝逃逸<;性格

Html symfony2小枝逃逸<;性格,html,symfony,escaping,twig,Html,Symfony,Escaping,Twig,我很困惑 输入:带有的句子答案是,你写你的小枝以获得你需要的HTML标记,并在你需要的地方打印变量 <a href="{{ path('route_name') }}" class="showProfile green bold">{{ Status.StatusStatus }}</a> 您可以编写自己的小树枝扩展,将一些html元素列入白名单: 不能有一半是HTML一半是文本的字符串。您需要在字符串中使用转义字符以使其成为合法的HTML。如果需要从变量中添加HTML

我很困惑


输入:
带有的句子答案是,你写你的小枝以获得你需要的HTML标记,并在你需要的地方打印变量

<a href="{{ path('route_name') }}" class="showProfile green bold">{{ Status.StatusStatus }}</a>

您可以编写自己的小树枝扩展,将一些html元素列入白名单:

不能有一半是HTML一半是文本的字符串。您需要在字符串中使用转义字符以使其成为合法的HTML。如果需要从变量中添加HTML元素,则需要像以前一样使用
raw
过滤器,但必须转义特殊字符。举个例子,
嗯,你不会谈论这样的事情吧?raw |逃跑,因为这不起作用obv。或者我弄错了?既然你用Symfony2标记了你的问题,我想你正在使用它。引用文档:是的,我知道。我知道默认情况下转义是打开的,但我不确定这对我有什么帮助。可能当stackoverflow以这种方式工作时。。。拒绝用户编写类似<(此处无空格)语句的代码是个好主意吗?正如sLaks所说,“你不能有一个半HTML半文本的字符串。”它不是,因为{{Status.StatusStatus}}包含锚链接,这是糟糕的视图设计,为什么糟糕?嗯,不然我怎么做呢?我愿意听取建议。我有经典的状态表。。。用户提交一些状态,如:这是我的状态。我想在里面贴上@peter的标签。我将它(@peter)转换成link,然后与其余的状态文本一起显示。您的变量(从控制器传入)不应该包含标记-这是MVC引入的分离关注点的基本原则。使用宏或带有函数/过滤器的细枝扩展(我认为对于这种情况,自定义过滤器是最好的选择)您的意思是:{myStatus | convertTagHashToAnchorUrl}?
Sentence with <character
<a href='/app_dev.php/something/' class='showProfile green bold'>something </a>
Input : Sentence with <character

Output: Sentence with
<a href="{{ path('route_name') }}" class="showProfile green bold">{{ Status.StatusStatus }}</a>