我有一个Doctrine 2模型,它与文件系统模型(MogileFS)有关,我使用模型/映射器方法实现了该模型。我想要完成的是懒惰地从Doctrine 2实体加载非原则模型,并在此过程中将映射对象注入到此模型中。
示例:
use Doctrine\ORM\Tools\Pagination\Paginator;
$dql = "SELECT p, c FROM BlogPost p JOIN p.comments c";
$query = $entityManager->createQuery($dql)
->setFirstResult(0)
->setMaxResults(100);
$paginator = new Paginator($query, $fetchJoin = true);
$c = count($paginator);
foreach ($paginator as $post) {
// TODO Should use injected mapper to do find()
// and lazy load model when not set
echo $post->getThumbnailFileModel() . "\n";
}我如何设置一个实体加载钩子,将我的modelMapper注入到实体中,以便延迟加载工作?
发布于 2012-02-25 12:33:27
我使用@postLoad事件侦听器解决了这个问题。
有关参考,请参见:http://docs.doctrine-project.org/projects/doctrine-orm/en/2.0.x/reference/events.html
https://stackoverflow.com/questions/9437763
复制相似问题