我有这个routing.yml
backend_routes:
resource: "%kernel.root_dir%/config/routing_backend.yml"
host: "backend.com"
frontend_routes:
resource: "%kernel.root_dir%/config/routing_frontend.yml"
host: "frontend.com"
但路由知道关于%kernel.root_dir%参数的hothing。我如何将它的参数设置为routing.yml?
答案 0 :(得分:0)
也许我弄错了但是因为我知道你不需要设置%kernel.root_dir%参数,因为它在项目文件夹的其他地方设置并且已经知道。在文件YourProject\app\bootstrap.php.cache
中,您有
protected function getKernelParameters()
{
$bundles = array();
foreach ($this->bundles as $name => $bundle) {
$bundles[$name] = get_class($bundle);
}
return array_merge(
array(
'kernel.root_dir' => $this->rootDir,
'kernel.environment' => $this->environment,
'kernel.debug' => $this->debug,
'kernel.name' => $this->name,
'kernel.cache_dir' => $this->getCacheDir(),
'kernel.logs_dir' => $this->getLogDir(),
'kernel.bundles' => $bundles,
'kernel.charset' => $this->getCharset(),
'kernel.container_class' => $this->getContainerClass(),
),
$this->getEnvParameters()
);
}
如果找到字符串" kernel.root_dir" (在项目中使用Notepad ++),您会发现许多在默认设置和第三方包中设置此参数的地方。
然而,一般情况下,如果要设置参数值,则应找到文件YourProject\app\config\parameters.yml
(如果选择yml作为捆绑配置格式)。添加没有%%及其值的密钥。
parameters:
my.param: 25
如果您的配置是在xml中完成的,请使用
<parameters>
<parameter key="my.param">25</parameter>
</parameters>
你已经完成了。