Symfony 模板之间的细枝变量?

Symfony 模板之间的细枝变量?,symfony,twig,Symfony,Twig,对于TWIG来说,这是一种全新的语言(也是我的第一种模板语言),我在理解变量方面有点问题 我需要的是: 我有两个布局。一个继承另一个。 在第一个布局中,如果在第二个布局中声明了变量,我需要在div上放置一个if来添加一个类 提前感谢。用Symfony写下: return $this->render('::index.html.twig', array('variable' => $somevar)); “index.html.twig”如下所示: {% extends '::foo

对于TWIG来说,这是一种全新的语言(也是我的第一种模板语言),我在理解变量方面有点问题

我需要的是:

我有两个布局。一个继承另一个。 在第一个布局中,如果在第二个布局中声明了变量,我需要在div上放置一个if来添加一个类


提前感谢。

用Symfony写下:

return $this->render('::index.html.twig', array('variable' => $somevar));
“index.html.twig”如下所示:

{% extends '::foo.html.twig' %}

{# some contents #}
“foo.html.twig”看起来像这样:

{{ variable }}

它应该会起作用。如果它不起作用,在这里发布一些代码和错误,我会看看我能做些什么来帮助你。显然,这个例子是不现实的,但是除了全局变量和您定义为细枝扩展的任何变量之外,所有模板都应该可以访问从Symfony传递的所有变量。

在Symfony中,您可以编写:

return $this->render('::index.html.twig', array('variable' => $somevar));
“index.html.twig”如下所示:

{% extends '::foo.html.twig' %}

{# some contents #}
“foo.html.twig”看起来像这样:

{{ variable }}

它应该会起作用。如果它不起作用,在这里发布一些代码和错误,我会看看我能做些什么来帮助你。显然,这个例子是不现实的,但是除了全局变量和您定义为细枝扩展的任何变量之外,所有模板都应该可以访问从Symfony传递的所有变量。

render
中给出的每个变量都会传递给所有正在渲染的模板。这意味着如果
foo
是通过
page.html.twig
render
page.html.twig
包含/继承
layout.html.twig
layout.html.twig
将可以直接访问
foo
。在
render
中给出的每个变量都会传递给正在呈现的所有模板。这意味着如果通过
page.html.twig
render
page.html.twig
包含/继承
layout.html.twig
layout.html.twig
将直接访问
foo