Symfony2 和 Twig 有没有办法让只包含块的文件始终可用。
例如,如果我想让一个名为“cookie”的块在我的系统中的任何模板中始终可用,而不必总是在我正在使用的模板中包含或扩展它。
有任何想法吗?
澄清
假设我有一个通用块可以做一些事情,比如:
{% block myBlock %}
ABC Examples
{% endblock %}
我有一个知道它想用这个块渲染的类。我的模板本身并不一定知道这一点。
{{ block(myObj.blockName) }}
然后我想拥有它,以便我的控制器/服务/等。可以注册包含该块的文件,而我的模板实际上不需要直接知道它(所以我可以有多个这样的文件,每个文件都使用一些通用接口)。
类似于使用 TwigExtension 注册自定义 Twig 函数。我的模板不需要明确知道它的存在,它只需要在运行时可用。
那有意义吗?
为了进一步澄清,我本质上是想做一些事情,就像在 Symfony2 中如何使用默认的 Twig 块来呈现表单一样。我不必每次都包含默认表单文件,只是在我想更改某些内容时。