如何在Symfony中使用不同的控制台配置

时间:2013-09-10 09:59:44

标签: symfony

我按照how to expose a semantic configuration for a bundle上的指南进行了操作,并在app/config.yml(通过parameters.yml)中对其进行了配置。

我的包中还包含一些控制台命令。现在这个命令要么使用dev或prod配置,这很好。

但是如何让控制台命令使用一个额外的配置文件来设置与config.yml不同的一些东西?

E.g。

#app/config.yml
imports:
  - { resource: parameters.yml }

foo:
  view_mode: %view_mode%

#app/parameters.yml
parameters:
  view_mode: 1

我怎样才能做到这一点使用不同的parameters.yml

#app/parameters_console.yml
parameters:
  view_mode: 2

通过控制台调用时?新的环境不是我想要的。

1 个答案:

答案 0 :(得分:3)

我认为你需要创建一个custom environement

您只需在config_console.yml文件夹中创建app/config并覆盖所需的配置。

imports:
    - { resource: config_dev.yml }

foo:
    view_mode: 2

然后在您的应用程序中,运行

php app/console --env=console

这将使用默认配置devfoo.view_mode = 2运行您的应用程序 您可能需要注意,它将创建一个名为console

的新缓存文件夹