Отключить кэширование Doctrine и прокси - PullRequest
0 голосов
/ 13 марта 2019

Как отключить кэширование Doctrine и использование прокси во время разработки?Это вызывает хаос с моей IDE.Мой конфиг показан ниже.Также, чтобы я мог лучше понять, что происходит, опишите разницу между кэшированием и прокси.Спасибо

$settings=$cnt['settings']['doctrine'];
syslog(LOG_INFO, json_encode($settings));

$cache = $settings['dev_mode']
?new \Doctrine\Common\Cache\ArrayCache
:new \Doctrine\Common\Cache\ApcuCache;

$config = new \Doctrine\ORM\Configuration();

$config->setMetadataCacheImpl($cache);

$driver = new \Doctrine\ORM\Mapping\Driver\XmlDriver($settings['metadata_xml']);
$config->setMetadataDriverImpl($driver);

$config->setQueryCacheImpl($cache);

if($settings['proxy_namespace']) {
    $config->setProxyDir($settings['proxy_dir']);
    $config->setProxyNamespace($settings['proxy_namespace']);
}

$config->setAutoGenerateProxyClasses($settings['dev_mode']);

return EntityManager::create($settings['connection'], $config);


{
    "dev_mode": true,
    "cache_dir": "/var/www/app/var/doctrine/cache",
    "proxy_dir": "/var/www/app/var/doctrine/proxy",
    "proxy_namespace": "Proxy",
    "metadata_xml": ["/var/www/app/config/orm"],
    "connection": {
        "dbname": "mydbname",
        "user": "myuser",
        "password": "mypassword",
        "host": "localhost",
        "port": 3306,
        "driver": "pdo_mysql",
        "charset": "utf8mb4"
    }
}
...