Я устанавливаю этот комплект: GenemuFormBudnle, и я пытаюсь сделать автозаполнение ajax. У меня есть это в моей форме:Symfony 2 автозаполнение маршрутизации
$builder
->add('PermitsCompany', 'genemu_jqueryautocompleter_entity', array(
'route_name' => 'ajax_company',
'class' => 'MainCoreBundle:Company',
));
Это в мой контроллер: NewController.php
/**
* @Route("/ajax_company", name="ajax_company")
*/
public function ajaxCompanyAction(Request $request)
{
$value = $request->get('id');
$permits = $this->getDoctrine()->getRepository('JokerCoreBundle:Company')->findAjaxValue($value);
$json = array();
foreach ($permits as $permit) {
$json[] = array(
'label' => $permit->getName(),
'value' => $permit->getId()
);
}
$response = new Response();
$response->setContent(json_encode($json));
return $response;
}
И это в моем маршруте:
ajax_company:
defaults: { _controller: MainCoreBundle:Permits:ajaxCompany}
pattern: /ajax_company/
type: annotation
Вот сообщение об ошибке:
AnnotationException: [Семантическая ошибка] Аннотации «@Route» в методе Main \ CoreBundle \ Controller \ NewController :: ajaxCompanyAction() не был импортирован. Возможно, вы забыли добавить инструкцию «use» для этой аннотации?
Теперь ошибка исчезла СПАСИБО :), но есть ли у вас какие-либо идеи, почему автозаполнение все еще не работает? Я получил пустой ввод текста, но когда я печатаю что-то, это не автозаполняет его ... – Cre3k
Является ли это проблемой маршрута? – Cre3k
@ Cre3k Вы должны изучить вкладку консоли и сети в Инструментах разработчика или Firebug в зависимости от того, какой браузер вы используете. Вы пытались загрузить маршрут '/ ajax_company' непосредственно в своем браузере? – sjagr