Feldkonfiguration

Eine Feldkonfiguration bietet die Möglichkeit eine beliebige Konfiguration an ein Datenbankfeld anzufügen. Diese Konfiguration steht dadurch im Programmcode zur Verfügung und kann genutzt werden.

Eine Feldkonfiguration kann entweder über die Datenbankwidgets oder die Datenmodellierung hinzugefügt werden.

Konfiguration

Sonderfall Benutzerdefiniertes Feld bzw. feature

Wurde der Formulartyp eines Datenbankfeldes auf Benutzerdefiniertes Feld bzw. feature gesetzt, dann ist zwingend eine Feldkonfiguration notwendig. Diese wird benötigt um einen Einstiegspunkt für brandbox zu definieren um das entsprechende Feld aufzubauen.

Feldkonfiguration in widget.json
[...], { "identifier": "myColumnIdentifier", "formType": "feature", [...] "configuration": { "feature": "pluginType/pluginName.methodName" }, [...] }, [...]



Feldkonfiguration bei Datenmodellierung
[...] feature: pluginType/pluginName.methodName [...]

Optional Standardkonfiguration

Ab Version 5.4 besitzt jedes Datenbankfeld zwei Standardkonfigurationen. Diese ermöglichen eine Veränderung der Felddarstellung. Beide Konfigurationsoptionen stehen sowohl in der Datenmodellierung als auch in den Datenbankwidget zur Verfügung.

Parameter

Datentyp

Standardwert

Beschreibung

Parameter

Datentyp

Standardwert

Beschreibung

vertical

boolean

false

Standardmäßig werden in brandbox Label und Feld nebeneinander dargestellt. Wird diese Einstellung auf true gesetzt, wird brandbox angewiesen Label und Feld untereinander darzustellen.

columns

integer

12

Ein Formular ist in brandbox in ein 12-spaltiges Layout unterteilt. Standardmäßig belegt jedes Feld, gemeinsam mit seinem Label, 12 Spalten. Diese Konfiguration kann genutzt werden um einem Feld eine maximale Anzahl an zu belegenden Spalten vorzugeben und dadurch die maximale Breite dieses Feldes zu beeinflussen.

Programmatischer Zugriff

Wurde eine Konfiguration bei einem Datenbankfeld gepflegt, so kann innerhalb des Programmcodes darauf zugegriffen werden. Hierfür ist die Felddefinition als Klasse des Interfaces \brandbox\component\widget\lib\widget\interfaces\columnInterface notwendig. Genauere Informationen hierzu in der entsprechenden Dokumentation.

$column = $widget->getColumn('myColumnIdentifier'); // Felddefinition $configuration = $column->getConfiguration(); // Benutzerdefinierte Feldkonfiguration als Array var_dump($configuration);