我想对实体结果执行查找操作。
$stores = c2gr($this, 'EducateToolsBundle:Stores')->findBy(['selectOption' => true, 'center_type_id' => 9])
我想做center_type_id!= 9
答案 0 :(得分:3)
您应该可以使用Criteria
类来实现这一目标。这样的事情应该有效:
use Doctrine\Common\Collections\Criteria;
$criteria = Criteria::create();
$criteria->where($criteria->expr()->neq('center_type_id', 9));
$criteria->andWhere($criteria->expr()->eq('selectOption', true));
$entityRepository = $this->getDoctrine()->getRepository('C2EducateToolsBundle:Stores');
$result = $entityRepository->matching($criteria);
注意:如果您在使用Symfony\Bundle\FrameworkBundle\Controller\Controller
方法扩展getDoctrine
的课程中,则上面会有效。如果你不在这样的课程中,你应该注入EntityManager
或从服务容器中获取它。
有关详情,请查看this answer
答案 1 :(得分:2)
只需使用DQL或QueryBuilder
。
$repository
->createQueryBuilder('s')
->where('s.selectOption = :selectOption')
->andWhere('s.center_type_id <> :center_type_id')
->setParameters([
'selectOption' => true
'center_type_id' => 9,
])
->getQuery()
->getResult();