我有两个实体,Order 和 Orderline 具有一对多的关系。我有一个列表,我只需要来自订单的数据,但 Doctrine 会查询每个订单的订单行。我没有在查询中加入 Orderlines。如何防止Doctrine查询订单?
控制器中使用的查询:
$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();
Order 类中的一对多注解:
/**
* @ORM\OneToMany(targetEntity="Orderline", mappedBy="order")
*/
protected $orderlines;
Orderline 类中的多对一注释:
/**
* @ORM\ManyToOne(targetEntity="Order", inversedBy="orderlines")
*/
protected $order;