symfony - 未找到教义代理

标签 symfony doctrine-orm symfony-cmf doctrine-phpcr

我正在尝试使用 Doctrine PHPCR-ODM 设置 Symfony CMF。不幸的是,每当我想将 Sonata Admin 中的一些数据保存到数据库中时,都会出现以下异常:

Compile Error: Doctrine\Common\Proxy\AbstractProxyFactory::getProxyDefinition():
    Failed opening required 
    '/Applications/XAMPP/xamppfiles/htdocs/app/cache/dev/doctrine/PHPCRProxies/__CG__DoctrineODMPHPCRDocumentGeneric.php'

我已经多次初始化存储库并删除了缓存,但没有任何帮助。

有人知道为什么这个文件丢失了吗?这个文件是如何生成的?

最佳答案

我发现问题出在哪里了。

在 Symfony2 的配置文件中,我必须添加以下内容:

doctrine_phpcr:
    odm:
        auto_generate_proxy_classes: "%kernel.debug%"

对于生产环境,需要提前调用php app/console cache:warmup生成文档的代理类。

应该这样做,以尽量减少生产环境中的工作。

关于symfony - 未找到教义代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31451713/

相关文章:

php - 使用 Symfony Security 的简单登录表单

symfony - Doctrine ODM 嵌入文档父引用

php - Doctrine 2 : Can't update DateTime column on SQL Server 2008apm

php - 单个实体的 Doctrine2 自定义水化器

mysql - 如何使用 phpcr odm 制作嵌套 where 子句

linux - 使用 Symfony CMF 的 'app' 文件夹的权限问题

caching - PHPCR 节点和元缓存覆盖

php - Symfony 2 在两个域上登录

php - Ajax 正在丢失 session

php - Symfony 在生产中禁用 Controller 操作