Posts tagged dql
Doctrine 2 – Use foreign key as field in DQL
213 years ago
by Pieter Vogelaar
in PHP
In doctrine 2 there are by default no foreign key fields a ID. For example your “product” entity might have a “shop” property, but no “shopId” property.
To get all the products that belong to a shop you would always have to make a join like this:
/* @var $em \Doctrine\ORM\EntityManager */
$result = $em->createQuery("SELECT p FROM My\Entity\Product p
JOIN p.shop s WHERE s.id = :shopId"
)->setParameter('shopId', 1)
->getOneOrNullResult();
But in certain situations it would be nice to use the foreign key column directly, in this case “shopId”. That More >