doulao2128 2016-04-09 15:00
浏览 57
已采纳

更改Symfony2项目的默认配置文件

Context

I have a simple Symfony2 project (only command line commands). This project includes an app/config.yml file, containing information used for dependency injection creation.

For example, app/config.yml contains:

github:
    token: abcdefgh

And src/Foo/Resources/config/github.yml (services files) contains:

services:
    github.client:
        class: Github\Client
        calls:
            - ['authenticate', [%github.token%, null, 'http_token']]

The file app/config.yml is loaded by Application::__construct() function.

When I run app/console mycommand, it uses the defined token.

Needs

I need to be able to run my commands using different configurations. For now, I replace manually the app/config.yml file, but it's crappy.

To do this, I thought about 2 possible solutions:

  • Be able to specify another app/config.yml file when I run app/console mycommand --f=app/config2.yml.
  • Have another configuration file for specific command usage, and use it with app/console mycommand --f=myconfig.yml. The thing is the dependency injection can not work or be updated after the application is run.

I don't know how to do one of this solution (or a third one, no matters). If it's a common behavior, can you point me some documentation or example to do something like this?

  • 写回答

1条回答 默认 最新

  • dongyou1926 2016-04-09 15:19
    关注

    It is totally possible by using different environements, check out the doc : http://symfony.com/doc/current/cookbook/configuration/environments.html

    Typically you will specify the environement using --env=myenv.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 快手联盟怎么快速的跑出建立模型
  • ¥20 ros环境下运行orb-slam一直报错
  • ¥15 关于腾讯云服务器中,PHP页面无法打开的问题
  • ¥60 如何把照片修复成原始拍摄图
  • ¥80 Exited too quickly (process log may have details)
  • ¥15 爬知乎登录之后内容加载不出来
  • ¥15 怎么用protues测量通频带
  • ¥15 zepelin使用sparkInterpreter 异常
  • ¥15 paho mqtt 接收不到消息
  • ¥15 函数r关于两个分量y,z方向上的图像,分开画r随y的图像,r随z的图像