在Symfony2中使用带有KnpGaufrette和Doctrine的VichUploader时的循环引用

时间:2015-01-13 10:53:39

标签: php symfony doctrine-orm gaufrette vichuploaderbundle

我尝试在Symfony2项目中使用以下设置:

问题:一旦我尝试使用Gaufrette存储适配器" doctrine_dbal"我收到以下错误:

[Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException]                                                                                                                                                                                                                 
Circular reference detected for service "doctrine.dbal.default_connection", path: "doctrine.orm.default_entity_manager -> doctrine.dbal.default_connection -> vich_uploader.upload_handler -> vich_uploader.storage.gaufrette -> knp_gaufrette.filesystem_map -> gaufrette.storage_fs_filesystem".  

一旦Symfony尝试检查配置,就会出现问题,例如在

app/console cache:clear

如何解决此问题?

我的设置

我的项目设置是symfony/framework-standard-edition的默认设置,版本为2.5.*,没有AcmeDemo Bundle。

我只是通过Composer添加了Bundles:

composer require knplabs/knp-gaufrette-bundle vich/uploader-bundle

...将它们添加到AppKernel' registerBundles()

//...
$bundles = array(
        new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
        new Symfony\Bundle\SecurityBundle\SecurityBundle(),
        new Symfony\Bundle\TwigBundle\TwigBundle(),
        new Symfony\Bundle\MonologBundle\MonologBundle(),
        new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
        new Symfony\Bundle\AsseticBundle\AsseticBundle(),
        new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
        new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
        new AppBundle\AppBundle(),
        new Vich\UploaderBundle\VichUploaderBundle(), //NEW 
        new Knp\Bundle\GaufretteBundle\KnpGaufretteBundle(), //NEW
    );
//...

...并将以下配置添加到config.yml,该# ... knp_gaufrette: stream_wrapper: ~ adapters: storage_adapter: doctrine_dbal: connection_name: default table: data_storage columns: key: id content: file mtime: mtime checksum: checksum filesystems: storage_fs: adapter: storage_adapter vich_uploader: db_driver: orm storage: gaufrette mappings: storage: uri_prefix: /images/products upload_destination: storage_fs 基于文档VichUploader with GaufretteKnpGaufrette with Doctrine DBAL

{{1}}

1 个答案:

答案 0 :(得分:0)