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
Ajax 基于上一个select2中的选择使用select2查询数据库_Ajax_Symfony_Jquery Select2 - Fatal编程技术网

Ajax 基于上一个select2中的选择使用select2查询数据库

Ajax 基于上一个select2中的选择使用select2查询数据库,ajax,symfony,jquery-select2,Ajax,Symfony,Jquery Select2,我正在从事一个symfony项目(也使用Doctrine),我想在其中一个页面上实施交错搜索,例如: 用户在第一个select2框(通过Ajax从DB中提取数据)中搜索作者,一旦选择了一个项目,就会出现第二个select2框,名为title,我只想显示属于所选作者的标题 以下是初始框的控制器端代码(Ajax和controller)。你知道如何为第二个select2构造查询吗 与初始select2相关的部分,用于查询数据库中的结果和自动建议项: public function searchAjax

我正在从事一个symfony项目(也使用Doctrine),我想在其中一个页面上实施交错搜索,例如:

用户在第一个select2框(通过Ajax从DB中提取数据)中搜索作者,一旦选择了一个项目,就会出现第二个select2框,名为title,我只想显示属于所选作者的标题

以下是初始框的控制器端代码(Ajax和controller)。你知道如何为第二个select2构造查询吗

与初始select2相关的部分,用于查询数据库中的结果和自动建议项:

public function searchAjaxAuthorAction()
{
    $em = $this->getDoctrine()->getManager();

    $term = $this->get('request')->query->get('term');
    $limit = $this->get('request')->query->get('page_limit', 1);

    $rep = $em->getRepository('StephenPersianArtBundle:Main');

    if($term){
        $entities = $rep->createQueryBuilder('m')
            ->where('m.orig_author LIKE ?1')
            ->orderBy('m.orig_author', 'ASC')
            ->setParameter('1','%'.$term.'%')
            ->getQuery();
    }else{
        $entities = $rep->createQueryBuilder('m')
            ->groupBy('m.orig_author')
            ->getQuery();
    }

    $entities = $entities->execute();

    $resultset = array();

    foreach($entities as $entity){
        if($entity->getOrigAuthor()){
            $resultset[] = array(
                //'id' => $entity->getId(),
                'id' => $entity->getOrigAuthor(),
                'text' => $entity->getOrigAuthor()
            );
        }
    }

    $return = json_encode($resultset);//jscon encode the array
    return new Response($return,200,array('Content-Type'=>'application/json'));
}

还有一个与此相关的部分,它基本上是基于在SCORTT2中选择的项将数据加载到表中,但我不认为这与我所面临的问题相关,因为在最终查询完成之前所有这些都在发生。 任何帮助都将不胜感激