If your device implements ContainerAwareInterface , you have full access to the container and you can get one of your entity managers from it.
after you have an entity manager, you can get a repository or create a query using DQL or querybuilder.
namespace Vendor\YourBundleBundle\DataFixtures\ORM; use Doctrine\Common\DataFixtures\FixtureInterface; use Symfony\Component\DependencyInjection\ContainerAwareInterface; use Symfony\Component\DependencyInjection\ContainerInterface; class LoadCharacterData implements FixtureInterface, ContainerAwareInterface { private $container; public function setContainer(ContainerInterface $container = null) { $this->container = $container; } public function load() { $em = $this->container->get('doctrine')->getEntityManager('default'); // example using DQL $query = $em->createQuery('SELECT u FROM YourBundle\Entity\User u WHERE u.name = your_name'); $users = $query->getResult(); // example query using repository $repository = $em->getRepository('YourBundle:User'); $entities = $repository->findBy(array('name' => 'your_name')); // example using queryBuilder $qb = $repository->createQueryBuilder('u'); $qb ->where('u.name = :name') ->setParameter('name', 'your_name') ->orderBy('u.name'); $users = $qb->getQuery()->getResult(); // ... }
nifr
source share