mediatekformation

DataMapperInterface

Tags
author

Bernhard Schussek bschussek@gmail.com

Table of Contents

mapDataToForms()  : mixed
Maps the view data of a compound form to its children.
mapFormsToData()  : mixed
Maps the model data of a list of children forms into the view data of their parent.

Methods

mapDataToForms()

Maps the view data of a compound form to its children.

public mapDataToForms(mixed $viewData, array<string|int, FormInterface>|Traversable $forms) : mixed

The method is responsible for calling on the children of compound forms, defining their underlying model data.

Parameters
$viewData : mixed

View data of the compound form being initialized

$forms : array<string|int, FormInterface>|Traversable

A list of instances

Tags
throws
UnexpectedTypeException

if the type of the data parameter is not supported

Return values
mixed —

mapFormsToData()

Maps the model data of a list of children forms into the view data of their parent.

public mapFormsToData(array<string|int, FormInterface>|Traversable $forms, mixed &$viewData) : mixed

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.

Parameters
$forms : array<string|int, FormInterface>|Traversable

A list of instances

$viewData : mixed

The compound form's view data that get mapped its children model data

Tags
throws
UnexpectedTypeException

if the type of the data parameter is not supported

Return values
mixed —

Search results