在我的config.yml
文件中,我导入了一个配置参数的params.php
文件:
// app/config/params.php
<?php
$container->setParameter('base_name', $_SERVER['BASE']);
我将此参数用于VichUploader配置:
// app/config/config.yml
imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: services.yml }
- { resource: params.php }
vich_uploader:
db_driver: orm
mappings:
tag_image:
uri_prefix: %base_name%/../images/tags
它在我的项目中运行良好,但是当我想清除缓存时出现错误:
$ php bin/console cache:clear
我使用Symfony3。 我遵循了this topic的指导原则。
答案 0 :(得分:2)
如果它只是在cli模式下没有出现错误,您可以这样修改params.php
// app/config/params.php
<?php
if (php_sapi_name() != "cli") {
$container->setParameter('base_name', $_SERVER['BASE']);
}
IMO,如果你想设置外部参数,这就是你应该这样做的方式http://symfony.com/doc/current/cookbook/configuration/external_parameters.html
答案 1 :(得分:0)
&#34; BASE&#34;在控制台中调用脚本时,键不存在。您需要先检查params.php中是否存在此密钥。我不知道vich uploader bundle但我认为你不需要在cache clear命令上进行适当的配置。因此,如果基本密钥不存在,我认为您可以将空字符串设置为config。