Roberto Rizzi Roberto Rizzi - 26 days ago 10
Twig Question

Symfony2 - form_start function customise in twig

Form helpers

form_start
and
form_end
are useful in twig:

{{ form_start(form) }}
{{ form_end(form) }}


I can customise some parameters like the
method
or the
action
. But I need to customise others parameters like the
class
or add the
form-enctype
.

Can I do it? Should i set up it into the
FormType.php
?

Since now I simply try to add my customised value to the
twig
function like below:

{{ form_start(form, {'class': 'myclass', 'action': 'myaction'}) }}
// fields...
{{ form_end(form, {'render_rest': true}) }}


But in this case, for example, the
class
does not appear.

Answer

As form_start has the following signature,

form_start(view, variables)

And as class doesn't represent a valid variable name. You need to specify your class as a key/value array using the attr attribute.

Then, try ...

{{ form_start(form, {'class': 'myclass', 'action': 'myaction', 'attr': {'class': 'your_class_name'}}) }}

Also ...

  • You should be sure that your Type fileds are well defined in order to let the form_start helper set the right form-enctype.

  • The form_enctype(formView) helper is deprecated since Symfony 2.3.

Comments