Answers:
{{ entity.field_name.value }}
以获得真正的原始值,包括标签和编码。
{{ node.body.value }}
<p>Batman & Robin</p>
{{ content.field_name.0 }}
获取原始值减去标签和编码。
{{ content.body.0 }}
Batman & Robin
生的
只要有可能,都应避免使用此过滤器,尤其是在您输出可能由用户输入的数据时。有关在Drupal 8中自动转义的更多信息,请参见此页面。
原始过滤器将该值标记为“安全”,这意味着在启用了自动转义的环境中,如果将原始变量应用到该变量,则不会对该变量进行转义
来源:Twig的官方文档
例如,您可以使用:
{{ node.body.value|striptags }}
{{ paragraph.field_text.value|striptags }}
使用细枝的| striptags的问题是html实体的双重编码,而不是标记,因此&变为&,然后&amp; –贝尔迪尔
<
并>
正确显示。在输出之前,“&”号可能已经被转义了。但是问题是关于纯文本字段,而不是由文本过滤器处理的格式化文本字段。(要回答这个不问的问题,.value
出于安全原因,原始值(如果有人真的想要)仍然存在,并且可以正确地由Twig对其进行了转义,因为您永远不应输出未经过滤的格式化文本字段)
&
,您的示例中的输出是错误的,除非字段内容已被转义一次,否则在自动转义中不会发生这种情况)。
在这种情况下,您可以使用“ 枝条字段值”模块。安装此模块后,您将可以访问字段渲染数组中的部分数据。对于前。
{{ content.field_name|field_value }}
content.field_image|field_target_entity.uri.value
等等。有关项目页面的更多信息