Обычно я объявляю свои кнопки в 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.
Спасибо за отзывы.
Вы должны добавить путь к действию формы в качестве параметра конфигурации формы.
Если вы хотите добавить <a href=""></a>
ссылку / кнопку на форму, посмотрите на документы, чтобы узнать, как визуализировать виджет форм Symfony по виджетам (или построчно). Затем вы можете добавить ссылку / кнопку над form_end(form)
функция в вашем шаблоне.
Вы можете использовать несколько кнопок отправки и в своем коде сделать что-то вроде этого:
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 } }