как вызвать функцию контроллера с помощью кнопки формы symfony2

Обычно я объявляю свои кнопки в symfony2 так:

<a href="{{ path('delete_route_name', {'id': entity.id }) }}">Delete</a>

но в этом случае я должен использовать следующее утверждение:

$form->add('submit', 'submit', array('label' => 'Save Changes', 'attr' => array('style' => 'position: relative; left:33%')));

потому что эта кнопка просто в некоторых случаях (в форме) необходима.

Также я хочу вызвать функцию в контроллере с помощью этой кнопки. Как я могу добавить путь контроллера к этой кнопке?

Конечно, я могу работать с JavaScript, но я ищу решение без JavaScript.

Спасибо за отзывы.

0

Решение

Вы должны добавить путь к действию формы в качестве параметра конфигурации формы.

Если вы хотите добавить <a href=""></a> ссылку / кнопку на форму, посмотрите на документы, чтобы узнать, как визуализировать виджет форм Symfony по виджетам (или построчно). Затем вы можете добавить ссылку / кнопку над form_end(form) функция в вашем шаблоне.

1

Другие решения

Вы можете использовать несколько кнопок отправки и в своем коде сделать что-то вроде этого:


if ($ form-> isSubmitted ()  $ form-> isValid ()) {

// кнопка 1
if ($ form-> get ('submit_1') -> isClicked ()) {
return $ this-> myOtherControllerAction ($ request, $ form);
// или $ this-> forward см. https://symfony.com/doc/current/controller/forwarding.html
}
}
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector