【发布时间】:2015-06-01 11:03:19
【问题描述】:
我正在尝试创建Different Directories per Environment 中描述的文件夹结构:
- app
- config
- common
- config.yml
- routing.yml
- dev
- config.yml
- routing.yml
这确实适用于所有文件(config.yml、parameters.yml 等),但不适用于 config.yml。
我收到此错误:
路由文件“[…]”包含不支持的“imports”键:“0”。 应为以下之一:“resource”、“type”、“prefix”、“pattern”、 “路径”、“主机”、“方案”、“方法”、“默认值”、“要求”、“选项”、“条件”。
到目前为止我做了什么:
appKernel.php
public function registerContainerConfiguration(LoaderInterface $loader) {
$loader->load($this->getRootDir().'/config/'.$this->getEnvironment().'/config.yml');
}
routing.yml in dev
#app/config/dev/routing.yml
imports:
- { resource: ../common/routing.yml }
config.yml in 通用
#app/config/common/config.yml
imports:
- { resource: 'parameters.yml' }
- { resource: 'security.yml' }
- { resource: 'services.yml' }
framework:
router:
resource: "%kernel.root_dir%/config/common/routing.yml"
config.yml in dev
#app/config/dev/config.yml
imports:
- { resource: '../common/config.yml' }
- { resource: 'parameters.yml' }
- { resource: 'security.yml' }
- { resource: 'services.yml' }
framework:
router:
resource: "%kernel.root_dir%/config/dev/routing.yml"
我错过了什么?
【问题讨论】:
-
你修改了registerContainerConfiguration()方法的代码吗?
-
@Freelancer 是的,我做到了。我已将代码添加到问题中。
-
在你的 config.yml 为什么不导入 parameters.yml 和 security.yml ?
-
@Freelancer 其实我有。我刚刚删除它以缩短问题 - 我现在已经添加了整个内容。
-
为什么不在你的 app/config/dev/config.yml 中直接从 common 调用 routing.yml 而不是创建一个从 common 导入文件的 routing.yml?
标签: symfony yaml symfony-2.7