我与树枝模板的关系有问题。它返回原始 html 字符而不是 html 标记。<?php/* HomepageController.php */namespace App\Controller;use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;use Symfony\Component\HttpFoundation\Response;class HomepageController extends AbstractController{ /** * @Route("/homepage/") */ public function homepage() { return $this->render('homepage/homepage.html.twig', [ 'title' => 'this will be title', ]); }}homepage.html.twig<h1>this should show html content</h1> <p>{{ title }} </p>浏览器输出<h1>this should show html content</h1> <p>this will be title </p>树枝.yamltwig: default_path: '%kernel.project_dir%/templates' debug: '%kernel.debug%' strict_variables: '%kernel.debug%' exception_controller: null你知道我要设置的配置是什么吗
2 回答
偶然的你
TA贡献1841条经验 获得超3个赞
这是因为文件中设置了优先级。就像json一样。添加了html并且它起作用了。
fos.rest.yaml
format_listener:
rules:
- {
path: "^/",
priorities: ["json","html"],
fallback_format: json,
prefer_extension: false,
}
慕斯709654
TA贡献1840条经验 获得超5个赞
通常,twig 会将所有适用的字符转换为 html 实体(另请参见PHP 文档中的html_entites)。
如果您希望 twig 不进行此转换,则需要|raw
在变量后面添加(例如{{ code|raw }}
.
此默认行为背后的原因是为了防止用户将恶意代码注入您的网站(例如,包括 javascript 代码)。
提示:尽量避免变量中的 html 代码。如果不可能,请确保该值不能包含来自用户输入的 html。
- 2 回答
- 0 关注
- 100 浏览
添加回答
举报
0/150
提交
取消