skip to content

Error de formulario multipart en Symfony

Un error bastante engorroso de forms de Symfony que tiene solución

Cuando al hacer un $form->bind() nos da el siguiente error:

This form is multipart, which means you need to supply a files array as the bind() method second argument.

Significa que alguno de los campos del formulario es multipart. Es decir, que el formulario contiene campos de fichero. Por eso bind necesita un segundo argumento, que suele ser $request->getFiles($form->getName());

$this->form->bind($request->getParameter($this->form->getName()), $request->getFiles($this->form->getName()));

Para más información, en una entrada pasada expliqué en profundidad qué iba haciendo bind().