spl_object_hash () ожидает, что параметр 1 будет объектом, null

В проекте я использую доктрину 2, где у меня есть от одного до многих отношений:

Клиент => Заказы

Моя проблема аналогична этому вопросу, за исключением того, что я уже получаю сообщение об ошибке при попытке получить объект с помощью arraycollection ():

Warning: spl_object_hash() expects parameter 1 to be object, null given in C:\xampp\htdocs\test.example.com\vendor\doctrine\orm\lib\Doctrine\ORM\UnitOfWork.php on line 2852 

Содержимое Customer.php выглядит примерно так:

 <?php namespace Application\Entity; use Doctrine\ORM\Mapping as ORM; /** * Customer * * @ORM\Table(name="customer", uniqueConstraints={@ORM\UniqueConstraint(name="foo", columns={"foo"})}) * @ORM\Entity */ class Customer { public function __construct() { $this->orders = new \Doctrine\Common\Collections\ArrayCollection(); } /** * @var \Application\Entity\User * * @ORM\Id * @ORM\GeneratedValue(strategy="NONE") * @ORM\OneToOne(targetEntity="Application\Entity\User") * @ORM\JoinColumns({ * @ORM\JoinColumn(name="id", referencedColumnName="id") * }) */ private $id; /** * * @var \Doctrine\Common\Collections\ArrayCollection * * @ORM\OneToMany(targetEntity="Order", mappedBy="customer", fetch="EAGER") * */ private $orders; /** * @return \Doctrine\Common\Collections\ArrayCollection a list of orders related to the customer */ public function getOrders() { return $this->orders; } /** * Set id * * @param \Application\Entity\User $id * @return Customer */ public function setId(\Application\Entity\User $id) { $this->id = $id; return $this; } /** * Get id * * @return \Application\Entity\User */ public function getId() { return $this->id; } } 

Обновление: И вот код, вызывающий ошибку:

 $entityManager->getRepository('\Application\Entity\Customer')->find($user->getId());//debugger shows $user->id = 7 so that isn't causing the problem 

Update2: Поскольку идентификатор внутри клиента является объектом User, я также пробовал следовать без успеха:

 $entityManager->getRepository('\Application\Entity\Customer')->find($user); 

Я уже пробовал ответить на эту страницу, но это не помогло! Что мне нужно сделать, чтобы это работало?

Solutions Collecting From Web of "spl_object_hash () ожидает, что параметр 1 будет объектом, null"

Класс сущности, в котором я хотел добавить отношение «один ко многим», имел первичный ключ, который был сопоставлен как отношение «один к одному» к другому объекту, который вызывал проблему. Поэтому, чтобы обойти эту проблему, я удалил отношение «один к одному» и обновил свой код для работы без сопоставления «один к одному».