Form theme bundle enables ability to define form theme in FormType classes.
There is pull request implementing this feature awaiting review: symfony/symfony#23990
composer require bml/form-theme-bundle
- If you are not using symfony flex add
new Bml\FormThemeBundle\BmlFormThemeBundle()
to yourAppKernel.php
To define form type theme define theme
option for the form. For example in Type class:
class YourType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('field')
[...]
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'theme' => 'app/form/my_type_theme.html.twig'
]);
}
}
When you call createView()
on your form this bundle will call equivalent to {% form_theme form 'app/form/my_type_theme.html.twig' %}
on your form in background.