2016-10-20 1 views
2

내가 오류를 작성해야하는 방법을 여러 번 검색 한 후에도 여전히 수수께끼이므로 커뮤니티에 질문해야합니다.Php Doctrine OneToMany 오류 : BasicEntityPersister.php의 정의되지 않은 색인

여기에는 솔루션과 프로젝트라는 두 개의 테이블이 있습니다. 솔루션은 N 개의 프로젝트를 소유 할 수 있습니다. 프로젝트를 전혀 솔루션에 연결할 수도 없습니다. 공지 사항 : : 나는 다음과 같은 오류가있어

<?php 

namespace X\Project\Entity; 

use Doctrine\ORM\Mapping as ORM; 
use Doctrine\Common\Collections\ArrayCollection; 
use DateTime; 

/** 
* Description of Project 
* 
* @ORM\Entity(repositoryClass="X\Project\Repository\ProjectRepository") 
* @ORM\Table(name="project") 
* @ORM\HasLifecycleCallbacks 
* 
*/ 

class Project 
{ 

    /** 
    * @var int 
    * @ORM\Id 
    * @ORM\Column(type="bigint") 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    private $id; 

    /** 
    * @var \X\Project\Entity\Solution 
    * @ORM\ManyToOne(targetEntity="X\Project\Entity\Solution", inversedBy="projects") 
    * @ORM\JoinColumn(name="solution", referencedColumnName="id", nullable=true, onDelete="SET NULL") 
    */ 

    private $solution; 
} 

: 여기

는 Solution.php의 일부가 여기에

/** 
* Description of Solution 
* 
* @ORM\Entity(repositoryClass="X\Project\Repository\SolutionRepository") 
* @ORM\Table(name="solution") 
* @ORM\HasLifecycleCallbacks 
* 
* @author michel.strasser 
*/ 

class Solution 
{ 

    /** 
    * @var int 
    * @ORM\Id 
    * @ORM\Column(type="bigint") 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    private $id; 

    /** 
    * [...] 
    */ 

    /** 
    * @var \Doctrine\Common\Collections\ArrayCollection 
    * @ORM\OneToMany(targetEntity="X\Project\Entity\Project", mappedBy="solution") 
    */ 
    private $projects; 

    /** 
    * [...] 
    */ 
} 

가 Project.php 파일에 포함 된 파일입니다 정의되지 않은 색인 : [...] \ vendor \ doctrine \ orm \ lib \ Doctrine \ ORM \ Persisters \ Entity \ BasicEntityPersister.php의 온라인 1768에있는 해결책 :

... $ solution-> getProjects() -> toArray();에 액세스하려고 시도합니다.

의견이 있으십니까? 부디.

답변

0

버그가 발견되었습니다.

는 사실에는 버그가 없었다, 나는했다에 :

  • 출시 3 ORM이 : 맑은의 Cache *이 교리는
  • 데이터/DoctrineModule/캐시의 내용을 삭제 명령
관련 문제