如何防止在Symfony2中加载相关实体?
我有两个实体,Order和Orderline具有一对多关系。我有一个列表,其中我只需要来自订单的数据,但条令对每个订单的订单行进行查询。我没有在查询中加入订单行。如何防止查询订单行的条令 控制器中使用的查询:如何防止在Symfony2中加载相关实体?,symfony,doctrine,Symfony,Doctrine,我有两个实体,Order和Orderline具有一对多关系。我有一个列表,其中我只需要来自订单的数据,但条令对每个订单的订单行进行查询。我没有在查询中加入订单行。如何防止查询订单行的条令 控制器中使用的查询: $query = $em->createQuery("SELECT o FROM SomeBundle:Order o JOIN o.shop s JOIN s.user u WHERE u.id = :user_id AND o.status = :status") -&g
$query = $em->createQuery("SELECT o FROM SomeBundle:Order o JOIN o.shop s JOIN s.user u WHERE u.id = :user_id AND o.status = :status")
->setParameter('user_id', $user->getId())
->setParameter('status', 'paid');
$orders = $query->getResult();
有序类中的一对多注释:
/**
* @ORM\OneToMany(targetEntity="Orderline", mappedBy="order")
*/
protected $orderlines;
Orderline类中的多对一注释:
/**
* @ORM\ManyToOne(targetEntity="Order", inversedBy="orderlines")
*/
protected $order;
暗示教条的使用 或
请参见此使用 或 看到这个了吗
$query = $em->createQuery("SELECT partial o.{id} FROM SomeBundle:Order o JOIN o.shop s JOIN s.user u WHERE u.id = :user_id AND o.status = :status")
->setParameter('user_id', $user->getId())
->setParameter('status', 'paid');
$query->setHint(Doctrine\ORM\Query::HINT_FORCE_PARTIAL_LOAD, 1);
$orders = $query->getResult();