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

标签 symfony

我遵循 how to expose a semantic configuration for a bundle 上的指南并在我的 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

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

最佳答案

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

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

imports:
    - { resource: config_dev.yml }

foo:
    view_mode: 2

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

php app/console --env=console

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

的新缓存文件夹

关于symfony - 如何在 Symfony 中使用不同的控制台配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18715876/

相关文章:

symfony - 执行 "'缓存:clear --no-warmup'"command时发生错误

php - Symfony:持久化嵌入表单并避免重复条目

php - 交响乐。如何将参数传递给自定义表单字段类型?

php - 发现所有实现接口(interface)的类

symfony - 如何在 Twig 模板中输出 mustache 模板?

symfony - 将 PHPUnit 与 Phake 一起使用时,如何修复 Symfony 5 中的弃用通知?

php - Symfony 在 "make"命名空间中没有定义命令

symfony - 使用 SonataAdminBundle 对实体进行自定义删除处理

css - 在 Symfony2 中使用 Twitter Bootstrap 的最佳方式是什么?

rest - 使用 phpunit 和doctrine 测试 symfony Restful api