Php Doctrine OneToMany错误:在basicentitypersistence . Php中未定义索引



好了,在经过多次搜索我怎么会犯错误之后,我现在不得不向社区提出这个问题,因为它仍然是一个谜。

我这里有两个表:解决方案和项目。一个解决方案可以拥有N个项目。一个项目也可以不附加任何解决方案。

这是Solution.php文件的一部分

/**
 * Description of Solution
 * 
 * @ORMEntity(repositoryClass="XProjectRepositorySolutionRepository")
 * @ORMTable(name="solution")
 * @ORMHasLifecycleCallbacks
 *
 * @author michel.strasser
 */
class Solution
{
    /**
     * @var int
     * @ORMId
     * @ORMColumn(type="bigint")
     * @ORMGeneratedValue(strategy="AUTO")
     */
    private $id;
    /**
     * [...]
     */
    /**
     * @var DoctrineCommonCollectionsArrayCollection
     * @ORMOneToMany(targetEntity="XProjectEntityProject", mappedBy="solution")
     */
    private $projects;
    /**
     * [...]
     */
}

下面是Project.php文件的一部分:

<?php
namespace XProjectEntity;
use DoctrineORMMapping as ORM;
use DoctrineCommonCollectionsArrayCollection;
use DateTime;
/**
 * Description of Project
 * 
 * @ORMEntity(repositoryClass="XProjectRepositoryProjectRepository")
 * @ORMTable(name="project")
 * @ORMHasLifecycleCallbacks
 *
 */
class Project
{
    /**
     * @var int
     * @ORMId
     * @ORMColumn(type="bigint")
     * @ORMGeneratedValue(strategy="AUTO")
     */
    private $id;
    /**
     * @var XProjectEntitySolution
     * @ORMManyToOne(targetEntity="XProjectEntitySolution", inversedBy="projects")
     * @ORMJoinColumn(name="solution", referencedColumnName="id", nullable=true, onDelete="SET NULL")
     */
    private $solution;
}

我有以下错误:通知:未定义的索引:解决方案在[…]vendordoctrineormlib doctrineorm PersistersEntity basicentitypersistence .php第1768行

…当我试图访问$solution->getProjects()->toArray();

有什么建议吗?请。

发现Bug。

实际上没有bug,我不得不:

  • 启动3个form:clear-cache-* doctrine命令
  • 删除data/DoctrineModule/cache

最新更新