Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Forms Symfony2:动态搜索表单_Forms_Symfony - Fatal编程技术网

Forms Symfony2:动态搜索表单

Forms Symfony2:动态搜索表单,forms,symfony,Forms,Symfony,我尝试创建一个动态搜索表单,供许多实体使用。一切正常,但我需要测试所有字段以检查类型和他的条件:text=>LIKE,choice=>EQ,choice=>IN multiple=true。。。 你有什么办法吗?谢谢 public function search($Type, $search, $container) { $repository = $container->getDoctrine()->getRepository('prodCMDBBundle:'.$Type

我尝试创建一个动态搜索表单,供许多实体使用。一切正常,但我需要测试所有字段以检查类型和他的条件:text=>LIKE,choice=>EQ,choice=>IN multiple=true。。。 你有什么办法吗?谢谢

public function search($Type, $search, $container)
{
    $repository = $container->getDoctrine()->getRepository('prodCMDBBundle:'.$Type);

    $queryBuilder = $repository->createQueryBuilder('a');
    $queryBuilder->join('a.customers', 'p');

    foreach ($search['docs'] as $field => $value) {

        if ($repository->getClassMetadata('prodCMDBBundle:'.$Type)->hasField($field) && $value) {
            // ******** ??? Check my field type ??? ******/
            $queryBuilder ->andWhere($queryBuilder->expr()->eq('a.'.$field, ':a_'.$field))->setParameter('a_'.$field, $value);
        }
    }

    return $queryBuilder->getQuery();
}