Pass through / virtual field¶
Table of contents:
Introduction¶
There are three columns config types that do similar things but still have subtle differences between them. These are the none type, the passthrough type and the user type.
Characteristics of passthrough
:
A value sent to the
DataHandler
is kept as is and put into the database field. However, the default TYPO3 backend forms never send data for apassthrough
field.Unlike the field type
none
, the field typepassthrough
must have a database field.The TYPO3 backend forms do not render anything for
passthrough
fields by default. But they can be combined with a customrenderType
to display something. A field of typeuser
is better suited for such use cases, though.Values of
passthrough
fields are usually not rendered at other places in the backend.Field updates by the
DataHandler
get logged and the history/undo function will work with such values.
The passthrough
field can be useful, if:
A field needs no rendering, but some data handling using hooks of the
DataHandler
.The passthrough type is used by TYPO3 core to handle meta data on records rows that are not shown as fields if editing records and only have data logic attached to it. An example is the
l18n_diffsource
field whose data is rendered differently in FormEngine at other places if editing a record but still updated and handled by theDataHandler
.
Typical usages of the field type passthrough
is a field that only needs data evaluation on the DataHandler
side, but
no rendering definition. The DataHandler
does not evaluate the value in any way by default.
Since there is no rendering mode for this field type it is specifically fitted for direct API usage with the DataHandler
.