猿问

树枝模板返回 html 字符

我与树枝模板的关系有问题。


它返回原始 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>

树枝.yaml


twig:

    default_path: '%kernel.project_dir%/templates'

    debug: '%kernel.debug%'

    strict_variables: '%kernel.debug%'

    exception_controller: null

你知道我要设置的配置是什么吗


达令说
浏览 101回答 2
2回答

偶然的你

这是因为文件中设置了优先级。就像json一样。添加了html并且它起作用了。fos.rest.yamlformat_listener:rules:&nbsp; - {&nbsp; &nbsp; &nbsp; path: "^/",&nbsp; &nbsp; &nbsp; priorities: ["json","html"],&nbsp; &nbsp; &nbsp; fallback_format: json,&nbsp; &nbsp; &nbsp; prefer_extension: false,&nbsp; &nbsp; }

慕斯709654

通常,twig 会将所有适用的字符转换为 html 实体(另请参见PHP 文档中的html_entites)。如果您希望 twig 不进行此转换,则需要|raw在变量后面添加(例如{{ code|raw }}.此默认行为背后的原因是为了防止用户将恶意代码注入您的网站(例如,包括 javascript 代码)。提示:尽量避免变量中的 html 代码。如果不可能,请确保该值不能包含来自用户输入的 html。
随时随地看视频慕课网APP
我要回答