Jquery 要将Genemu FormBundle自动完成与querybuilder一起使用吗

Jquery 要将Genemu FormBundle自动完成与querybuilder一起使用吗,jquery,symfony,Jquery,Symfony,我想在Genemy FormByndle中使用以下代码,以便在表单中使用autocomplete: $builder->add('users', 'entity', array( 'class' => 'AcmeHelloBundle:User', 'query_builder' => function(EntityRepository $er) { return $er->createQueryBuilder('u')

我想在Genemy FormByndle中使用以下代码,以便在表单中使用autocomplete:

$builder->add('users', 'entity', array(
    'class' => 'AcmeHelloBundle:User',
    'query_builder' => function(EntityRepository $er) {
        return $er->createQueryBuilder('u')
            ->orderBy('u.username', 'ASC');
    },
));
我试过:

$builder
  ->add('user', 'genemu_jqueryautocomplete_entity', array(
        'class' => 'AcmeHelloBundle:User',
       'query_builder' => function(EntityRepository $er) {
            return $er->createQueryBuilder('u')
            ->orderBy('u.username', 'ASC');
         },
     ))
但查询生成器不是genemu_jqueryautocomplete_实体中的参数


有没有办法扩大这一范围

您可以获得查询生成器结果并在genemu_jqueryautocomplete中调用路由

以下是一些例子:

 $builder ->add('users','genemu_jqueryautocomplete_text', array(
                    'route_name' => 'retrieve_users_name',
            ));
我有一个关于
retributive\u users\u name
route的动作: `

并在UserRepository的getByValue函数中编写querybuilder

/**
 * @Route("/retrieve-users-name", name="retrieve_users_name")
 */
public function retrieve_users_nameAction(Request $request)
{
    $value = $request->get('term');

    //retriving users
    $users = $this->getDoctrine()->getRepository('XYBundle:User')
                                     ->findByValue($value);
    // convert the result to array
    $search = array();
    foreach ($users as $user) {
    $search[$user->getId()] = $user->getName();
    }

    $response = new Response();
    $response->headers->set('Content-Type', 'application/json');
    $response->setContent(json_encode($search));

    return $response;
}