簡體   English   中英

base.html.twig中的自定義變量

[英]Custom Variables in base.html.twig

我想知道如何在交響樂應用程序的base.html.twig中使用自定義變量。

我知道我可以使用{{app.whatever}},但是如果願意,我將如何使用{{myvariable}}或{{myentity.row}}?

謝謝

由於變量是用樹枝模板渲染的,因此您可以在父模板和子模板中都使用此變量。

換句話說,如果您具有以下基本模板:

// base.html.twig
<html>
    <body>
       {{ block body }} 
       {{ endblock }}
    </body>
</html>

以下子模板:

// child.html.twig
{% extends 'base.html.twig' %}
{% block body %}
    // content
{% endblock %}

以及以下控制器動作:

public function renderVariableAction()
{
    return $this->render('child.html.twig', [
        'hello' => 'Hello world',
    ]);
}

您可以在base.html.twigchild.html.twig使用{{ hello }}

編輯

對於全局變量:

// app/config/config.yml
# ...

twig:
    # ...
    globals:
        your_custom_var: "your_value"

您無法定義始終分配給特定模板的變量,該變量必須隨其動態呈現。

注意您可以像這樣動態定義全局變量:

$this->get('twig')->addGlobal('entity', $entity);

因此,您可以使用EventListener輕松地將相同的變量注入kernel.response

請參閱模板中的全局變量

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM