Вы должны сделать это таким образом:
Во-первых, Я предполагаю, что у вас есть файл базового шаблона, такой как layout.html.twig, и все остальные страницы расширяют его. Например:
// Resources/views/layout.html.twig
<doc ... bla blah>
<title>My site</title>
...(js, css)...
<body>
<div id="top">
{% render url("site_wide_form") %}
</div>
{% block content %}
{% endblock content %}
</body>
Вам нужно контроллер, который будет обрабатывать вашу форму:
//Controller/SitewideController.php
/**
* @Route("/some/url/here", name="site_wide_form")
* @Template("yourbudle:folder:site_wide_form.html.twig")
*/
public function someAction()
{
..... your code for form, process submission etc ...
return ["form"=>$form->createView()] ;
}
и файл шаблона:
// site_wide_form.html.twig
<form action="{{ path("site_wide_form") }}" method="post">
{{ form_widget(form) }}
</form>
Вот так. Прочтите это, чтобы понять тег рендеринга: http://symfony.com/doc/2.2/book/templating.html#embedding-controllers
спасибо. выглядит так, как я хотел – luchaninov