Я создал собственный тип формы в symfony2. Этот тип формы имеет свой собственный шаблон, и это работает нормально.Тип пользовательской формы Symfony с активами
Тип формы также нуждается в некотором javascript на клиентском столе, чтобы работать красиво. Я хотел бы добавить этот javascript на страницу, используя тот же шаблон, который я использую для визуализации виджета. Это немного больше хлопот, чтобы сделать это вручную. Я мог бы добавить javascript вручную на каждой странице, но было бы неплохо, если бы это произошло автоматически.
Я не могу добавить javascript непосредственно перед или после самого элемента, так как он имеет зависимость от jquery, который загружается только в нижней части тела.
Я попытался использовать блок, который определен в «основном шаблоне» (он называется block_javascript
), чтобы добавить пользовательские javascripts в нижний колонтитул страницы, но кажется, что рендеринг форм работает немного по-другому, а блок недоступно.
Я использую assetic для подготовки и возврата активов.
Есть ли способ, которым я могу использовать блоки из основного шаблона, отображаемого при визуализации виджета формы?
Я действительно так не думаю, но посмотрите на этот комплект https://github.com/genemu/GenemuFormBundle, он дает вам дополнительную функцию 'form_javascripts', которую вы можете использовать для отображения js для вашего формы. – user2268997
Функция интересна, но я думаю, что она не будет работать в сочетании с assetic, которую я использую (но не упоминал об этом, вопрос обновляется сейчас). Я получаю чувство, что это хорошо работает, для этого потребуется много дополнительного кода. Добавление js + css вручную на странице выглядит намного проще и оставляет больше места для исключений, где вам нужно что-то немного другое. – DoppyNL