wor*_*nga 5 php doctrine symfony doctrine-orm
我有一个名为Event的实体
我现在想以某种方式访问我的Event-Entity中的这个目标实体,但我现在确定如何做到这一点.我想使用类似的东西访问树枝模板中的不同目标实体
{% if event.getClassName() == "User" %}
{{ if event.getUser().getName() }}
{% endif %}
Run Code Online (Sandbox Code Playgroud)
编辑:为了清楚,到目前为止我唯一感兴趣的是如何正确地创建关系.在ORM世界之外,您可能会使用连接语句.就好像我有一个由一个字段映射的目标实体.
到目前为止我使用实体存储库和DI加载相关的实体,但我发现丑陋知道有一个JOIN语句,我可以使用:
public function getUpcomingEvents(){
$query = $this->createQueryBuilder('E')
->where('E.resolved = false')
->orderBy('E.notify_date', 'ASC')
->setMaxResults( $limit );
$res = $query->getQuery()->getResult();
$res = $this->attachAssociatedObjects($res);
return $res;
}
public function attachAssociatedObjects($res){
foreach ($res as $key => $entity) {
$assocObject = $this->getEntityManager()->getReference('My\Bundle\Entity\\'.$entity->getClassName(), $entity->getTargetId());
$res[$key]->setAssociatedObject($assocObject);
}
return $res;
}
Run Code Online (Sandbox Code Playgroud)