doctrine-orm - 学说 2 返回错误 'proxy directory must be writable'

标签 doctrine-orm zend-framework2

我在 Zendframework 2 中使用了学说 2

我正在尝试返回一个对象,但不断收到此错误:

Your proxy directory must be writable



这是我的查询:
$this->getEntityManager()
                    ->getRepository('Messages\Entity\Messages')
                    ->findOneBy(array('id' => 6,
                                      'receiverId' => 16
                   ));

但是,相同的查询返回一个没有任何问题的数组:
$qb = $this->getEntityManager()->createQueryBuilder();

     $qb->select(array('u'))
        ->from('Messages\Entity\Messages','u')
        ->where('u.id = :id')  
        ->andWhere('u.receiverUserId = :receiverId')    
        ->setParameter('receiverId',16)    
        ->setParameter('id',(int)6);

      $query = $qb->getQuery();
        return   $data = $query->getArrayResult(); 

最佳答案

如果您正在使用 Setup::createAnnotationMetadataConfiguration你可以简单地修复它

  • 在您的项目根目录中创建以下目录。 data/DoctrineORMModule/Proxy
  • chmod -R 755 data/DoctrineORMModule/Proxy

  • 在您的 bootstrap 中包含数据目录的路径,如下所示:
    Setup::createAnnotationMetadataConfiguration(array(__DIR__ . "/src/models"), $this->isDevMode, "data/DoctrineORMModule/Proxy")
    那为我修好了。

    关于doctrine-orm - 学说 2 返回错误 'proxy directory must be writable',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23406242/

    相关文章:

    zend-framework - Zend_Validate_Db_RecordExists 与 Doctrine 2?

    casting - 在Doctrine2 DQL查询上订购的CASTING属性

    php - Symfony3 身份验证成功后将登录时间戳保存在数据库中

    zend-framework2 - 在Zend Framework 2中如何使用distinct?

    symfony2 按属性对对象集合进行排序

    php - XXX 不是有效的实体或映射的父类(super class)//和配置选项

    php - 如何扩展 ZF2 骨架应用程序 - 带外键的实体

    php - 简单页面上的高平均负载 zf2 + 学说

    entity-framework - 具有实体替换的 Doctrine 2 模块化应用程序

    zend-framework2 - Zend Framework 2,在 InputFilter 中验证后过滤值