繁体   English   中英

Twig 原始与 twig (2)

[英]Twig raw with twig (2)

我有一个与set-default-raw-filter-in-twigtwig-raw-with-twig类似的问题,但方式不同。 我使用我的数据库的两个表。

第一个edition包含 DateTime 格式的日期,用作我们比赛的截止日期。 在这里,属性dateouverturesite的值为2021-05-08 00:00:00

第二个, odpf_article包含要在我的渲染中使用的文本。 那文本是用 HTML 标签格式化的。

在其中一个文本中,我希望显示第一个表中的日期。 我试图将这些引用作为 Twig 变量: Twig in Twig !

我在 Symfony Controller 中的 function:

    public function concours(Request $request,$choix): \Symfony\Component\HttpFoundation\Response
        {
            $edition = $this->session->get('edition');
            $repo2=$this->getDoctrine()->getRepository(OdpfArticle::class);
            $article=$repo2->findOneBy(['choix'=>$choix]);
            $texte=$article->getTexte();
            $tab=[ 'choix'=>$choix,
                  'texte'=>$texte,
                  'edition'=>$edition ];
            return $this->render('core/odpf-concours.html.twig', $tab);
        }

texte属性中的行

    <ul>
      <li> ouverture des inscriptions :{{ app.session.get('edition').date_ouverture_site }}  
      </li>
    </ul>

渲染的线条:

                <div class ="contenu">
                    {{ texte|escape('html') }}
                </div>

或使用原始过滤器:

                <div class ="contenu">
                    {{ texte|raw }}
                </div>

最终结果(两个过滤器相同:

ouverture des inscriptions:{{ app.session.get('edition').date_ouverture_site }}

我的问题是:如何编写 Twig 变量?

我有十个不同的日期要显示,另一个过滤器要应用来只显示月份和日期......

您必须使用波浪号"string" ~ var ~ "more string"将变量与字符串连接起来

{% set something = 'stuff' %}
{% set texte = '<ul>
      <li> ouverture des inscriptions :' ~ something ~ ' 
      </li>
    </ul>' %}
    
{{ texte|raw }}

结果:

<ul>
    <li> ouverture des inscriptions :stuff 
    </li>
</ul>

但是,我怀疑您真正想要做的是使用模板片段,特别是如果插入的值可能会更改。

{# src: _fragment.html.twig #}
    <ul>
      <li> ouverture des inscriptions :{{ app.session.get('edition').date_ouverture_site }}  
      </li>
    </ul>

然后根据需要将它包含在任何你想要的地方

{# src: main.html.twig #}

<div>
  <h1>The list:</h1>
  {{ include('_fragment.html.twig') }}
</div>

<div>
  <h4>That list again:</h4>
  {{ include('_fragment.html.twig') }}
</div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM