/** * Render a json array of entity values and text (to be used in autocomplete widgets) * */ public function autocompleteListAction(ContentAdmin $admin, $where, $id_property, $property, $query) { $qb = $admin->getQueryBuilder(); $results = $qb->andWhere(base64_decode($where))->setParameter('query', '%' . $query . '%')->getQuery()->getResult(); $flattenedResults = array(); $accessor = PropertyAccess::createPropertyAccessor(); foreach ($results as $result) { $id = $accessor->getValue($result, $id_property); $value = $accessor->getValue($result, $property); $flattenedResults[] = array($id, $value); } return new JsonResponse(array('result' => $flattenedResults)); }