RadioListMapper
class RadioListMapper implementsDataMapperInterface
Maps choices to/from radio forms.
A {@link ChoiceListInterface} implementation is used to find the corresponding string values for the choices. The radio form whose "value" option corresponds to the selected value is marked as selected.
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$choice,Traversable$radios)
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$radios,mixed$choice)
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.