DataMapperInterface
interface DataMapperInterface
Methods
Maps the view data of a compound form to its children.
Maps the model data of a list of children forms into the view data of their parent.
Details
void
mapDataToForms(mixed$viewData,Traversable$forms)
Maps the view data of a compound form to its children.
The method is responsible for calling {@link FormInterface::setData()} on the children of compound forms, defining their underlying model data.
void
mapFormsToData(Traversable$forms,mixed$viewData)
Maps the model data of a list of children forms into the view data of their parent.
This is the internal cascade call of FormInterface::submit for compound forms, since they cannot be bound to any input nor the request as scalar, but their children may:
$compoundForm->submit($arrayOfChildrenViewData)
// inside:
$childForm->submit($childViewData);
// for each entry, do the same and/or reverse transform
$this->dataMapper->mapFormsToData($compoundForm, $compoundInitialViewData)
// then reverse transform
When a simple form is submitted the following is happening:
$simpleForm->submit($submittedViewData)
// inside:
$this->viewData = $submittedViewData
// then reverse transform
The model data can be an array or an object, so this second argument is always passed by reference.