Composer php 基于每个环境配置不同的parameters.yml路径
我需要根据不同的环境将Composer php 基于每个环境配置不同的parameters.yml路径,composer-php,symfony,Composer Php,Symfony,我需要根据不同的环境将parameters.yml放置在不同的环境中。在开发中,它将位于app/config中,但在预生产中,路径将发生变化,生产环境也是如此,等等 我知道parameters.yml的路径是在composer.json上定义的,在“extra”下的“incenteev参数”中,但是有没有办法为不同的环境配置它(比如extra dev或extra where) composer额外部分如下所示: { { "extra": { "symfony-app-dir": "
parameters.yml
放置在不同的环境中。在开发中,它将位于app/config中,但在预生产中,路径将发生变化,生产环境也是如此,等等
我知道parameters.yml
的路径是在composer.json
上定义的,在“extra”下的“incenteev参数”中,但是有没有办法为不同的环境配置它(比如extra dev或extra where)
composer额外部分如下所示:
{
{
"extra": {
"symfony-app-dir": "app",
"symfony-bin-dir": "bin",
"symfony-var-dir": "var",
"symfony-web-dir": "web",
"symfony-tests-dir": "tests",
"symfony-assets-install": "relative",
"incenteev-parameters": {
"file": "app/config/parameters.yml"
}
}
}
我需要的是让它在每个环境中都有所不同,比如:
{
{
"extra": {
"symfony-app-dir": "app",
"symfony-bin-dir": "bin",
"symfony-var-dir": "var",
"symfony-web-dir": "web",
"symfony-tests-dir": "tests",
"symfony-assets-install": "relative",
"incenteev-parameters": {
"file": "/some/directory/config/parameters.yml"
}
}
}
编辑:我遇到的问题不在Symfony的配置中,我只需在config.yml
、config\u dev.yml
等中更改导入的资源值即可使其正常工作
我现在试图解决的问题是让
composer
parameters.yml.dist
功能正常工作,因为当我执行composer install
时,它会在前面的composer.json
代码段中指定的目录中创建parameters.yml文件,而不是parameters.yml应该位于的目录中(取决于环境的目录).将resource:parameters.yml行从config.yml移到相应的config_env.yml文件中,并相应地调整名称。@Cerad这不是问题所在,我更新了问题,解释了问题的确切原因。希望现在一切都清楚了。就我个人而言,我只是复制和编辑。我想您可以看看IncenteV\\ParameterHandler\\ScriptHandler::buildParameters,看看它是否支持将文件名作为参数传递。