由于延迟加载,无法设置实体值并将其插入表中

时间:2017-08-24 12:06:16

标签: symfony doctrine-orm entity lazy-loading relationship

I have UserItem() entity.
I have Shard() entity.
I have Item() entity.

Shard()实体的方法 getItem(),它获取 Item()实体。

当我尝试将数据添加到UserItem()实体时。

$userItem->setItem($item);
$userItem->setUser($this->websiteUser);
$em->merge($userItem);

使用 setItem() setUser()方法。

我不能这样做,因为在 setItem($ item)

参数 $ item 的类别为

Proxies\__CG__\AppBundle\Entity\Item

只接受

AppBundle\Entity\Item

我得到这样的$ item:

$item = $em->getRepository(Item::class)->find($shards[$i]->getItem()->getId());

$ shards 是一个包含 Shard()实体的数组。

实体中的所有关系都已正确定义。

我如何克服这种情况?

我知道因为延迟加载而得到代理。

0 个答案:

没有答案