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



我遵循了有关如何公开捆绑包的语义配置的指南,并在app/config.yml中对其进行了配置(通过parameters.yml)。

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

但是如何使控制台命令使用额外的配置文件,该文件设置了一些与config.yml不同的内容?

例如

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

#app/parameters.yml
parameters:
  view_mode: 1

我怎样才能做到,例如使用不同的参数.yml

#app/parameters_console.yml
parameters:
  view_mode: 2

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

我认为您需要创建自定义环境

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

imports:
    - { resource: config_dev.yml }
foo:
    view_mode: 2

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

php app/console --env=console

这将使用默认配置dev运行应用程序,并foo.view_mode = 2
您可能需要注意,它将创建一个名为 console 的新缓存文件夹

最新更新