2014-10-09 3 views
0

Я пытаюсь отправить запрос Ajax моему контроллеру, получить форму там, и если некоторые данные истинны, нужно удалить часть формы, но я не знаю, как я могу получить свою форму, вызванную $ request object. Помоги мне, пожалуйста.Как получить форму в действии контроллера Symfony 2

Весь код сейчас, я говорю там есть какой-то способ, чтобы сделать что-то вроде этого $request->getForm()

public funcion ajaxAction(Request $request) 
{ 
    if ($request->isXmlHttpRequest()) { 

     } 
} 
+0

Вы пробовали настройки формы действия как 'ajaxAction'? Таким образом, вы можете продолжить, как описано в [docs] (http://symfony.com/doc/current/book/forms.html#handling-form-submissions) – stevenll

ответ

1

Вы должны сделать что-то вроде этого (я предполагаю, что вы находитесь в контроллере простирающейся Symfony\Bundle\FrameworkBundle\Controller\Controller):

public funcion ajaxAction(Request $request) 
{ 
    if ($request->isXmlHttpRequest()) { 
     $form = $this->createForm(new YourFormType()); 
     $form->handleRequest($request); 
    } 
} 

после этого у вас есть $form с данными из requst bound. Можно назвать такие методы, как isValid() или getData() на этой переменной

Проверить documentation для получения дополнительной информации

Смежные вопросы