【发布时间】:2013-06-26 13:28:47
【问题描述】:
我想用克隆的 Scenario 对象创建 Game 对象。
Create Game form:
Name: My game
Scenario: MyScenario (Combo box)
基于对Deep clone Doctrine entity with related entities 问题的回答,我已经实现了__clone 方法。
我在GameAdmin 类中使用__clone 方法中的prePersist 方法。
public function prePersist($game)
{
$user = $this->container->get('security.context')->getToken()->getUser();
$game->setAuthor($user);
$cp = clone $game->getScenario(); //Error after add this
$game->setScenario($cp); //two lines
}
我不确定这是否适合进行此操作,因为我收到了MappingException:
The class 'Doctrine\ORM\Persisters\ManyToManyPersister' was not found in the chain
configured namespaces Sonata\MediaBundle\Entity, FOS\UserBundle\Entity,
Sonata\UserBundle\Entity, Application\Sonata\MediaBundle\Entity,
Application\Sonata\UserBundle\Entity, GM\AppBundle\Entity
【问题讨论】:
标签: php symfony doctrine-orm sonata-admin