首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Symfony2 Twig模板中获取配置参数

如何在Symfony2 Twig模板中获取配置参数
EN

Stack Overflow用户
提问于 2011-07-22 17:12:43
回答 6查看 167K关注 0票数 178

我有一个Symfony2小枝模板。我想输出此twig模板中配置参数的值(版本号)。因此,我像这样定义了config参数:

代码语言:javascript
复制
parameters:
    app.version: 0.1.0

我可以在控制器中使用这个配置参数,但我不知道如何在我的Twig模板中获取它。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-12-03 01:20:26

您可以在配置的twig globals部分使用参数替换:

参数config:

代码语言:javascript
复制
parameters:
    app.version: 0.1.0

小枝配置:

代码语言:javascript
复制
twig:
    globals:
        version: '%app.version%'

小枝模板:

代码语言:javascript
复制
{{ version }}

此方法的好处是允许您在ContainerAware类中使用该参数,方法如下:

代码语言:javascript
复制
$container->getParameter('app.version');
票数 416
EN

Stack Overflow用户

发布于 2011-07-23 03:40:07

您可以很容易地在配置文件中定义:

代码语言:javascript
复制
twig:
    globals:
        version: "0.1.0"

并通过以下方式在模板中访问它

代码语言:javascript
复制
{{ version }}

否则它必须是一种使用Twig扩展来公开参数的方法。

票数 191
EN

Stack Overflow用户

发布于 2013-05-05 23:32:52

在较新版本的Symfony2上(使用parameters.yml而不是parameters.ini),您可以存储对象或数组,而不是键值对,因此您可以这样管理全局变量:

config.yml (仅编辑一次):

代码语言:javascript
复制
# app/config/config.yml
twig:
  globals:
    project: %project%

parameters.yml:

代码语言:javascript
复制
# app/config/parameters.yml
project:
  name:       myproject.com
  version:    1.1.42

然后在细枝文件中,您可以使用{{ project.version }}{{ project.name }}

注意:我个人不喜欢向app添加内容,只是因为这是Symfony的变量,我不知道将来会存储什么。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6787895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档