我用Symfony3创建了一个实体,我将数据库中的字段列设置为Array。
Symfony保存到数据库寄存器,如:
id | name | roles
01 | Raphael | ["ROLE_ADMIN", "ROLE_SUPER_ADMIN"]
02 | Jose A. | ["ROLE_ADMIN"]
03 | Marcos | ["ROLE_USER"]
我怎样才能只为ROLE_ADMIN
或只是ROLE_USER
而使用教义进行选择?
我需要为许多其他情况创建搜索...但这个是最容易解释的...
希望你理解我的情况...谢谢!
我使用以下语法解决了我的问题:
$formData = $form->getData();
$em = $this->getDoctrine()->getManager();
$usersRepository = $em->getRepository('AppBundle:Usuario');
$qb = $usersRepository->createQueryBuilder('r');
$qb->select('a')
->from('AppBundle:Usuario', 'a');
foreach($formData as $key => $value) {
foreach($value as $k => $item){
$qb->andWhere("a.$key LIKE :it_$k")
->setParameter("it_$k", '%'.$item.'%');
}
}
$result = $qb->getQuery()->execute();