Feldtypen im Überblick
Jedes ->change_type()-Steuerelement, das xCRUD Nova Pro für ein Formularfeld rendern kann - von reinem Text bis zur Live-Kameraaufnahme.
->change_type()
->change_type($field, $type, $length = '', $extra = []) überschreibt, wie ein Feld im Erstellen-/Bearbeiten-Formular gerendert wird (und, bei Typen wie select, wie dessen Wert auch beim Inline-Bearbeiten angezeigt wird). Ohne einen solchen Aufruf wird der Typ eines Feldes aus dessen Datenbank-Spaltentyp abgeleitet.
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
$field | string | - | Die zu ändernde Spalte |
$type | string | - | Einer der unten aufgeführten Typen |
$length | string | '' | Nur bei price relevant: Nachkommastellen (Standard 2). Von jedem anderen Typ ignoriert |
$extra | array | [] | Optionen-Array für select/multiselect/radio/checkboxes/switch, oder ['prefix' => ..., 'suffix' => ...] für price |
Die Typenliste
| Typ | Beschreibung |
|---|---|
text | Einfaches einzeiliges Text-Eingabefeld |
textarea | Mehrzeiliges Klartext-Eingabefeld |
editor | Quill-Rich-Text-WYSIWYG-Editor, speichert HTML |
select | Einwert-Dropdown, aufgebaut aus den Optionen von $extra |
multiselect | Mehrwert-Auswahl, gespeichert als kommaverbundener Wert |
radio | Radio-Button-Gruppe |
checkboxes | Checkbox-Gruppe, kommaverbundener Wert wie bei multiselect |
switch | Expliziter Umschalter - erfordert immer genau 2 Optionen |
password | Maskiertes Text-Eingabefeld (nur optische Maskierung, kein Hash - wird wie jedes andere Textfeld als Klartext gespeichert) |
hidden | Verstecktes Eingabefeld, von der Inline-Bearbeitung ausgeschlossen, wird aber weiterhin mit dem Formular übermittelt |
time | Zeitauswahl (MySQL-TIME-Spalten erhalten dies automatisch) |
year | Zahlen-Eingabefeld, begrenzt auf MySQLs YEAR-Bereich (1901-2155) |
price | Dezimal-Eingabefeld mit optionalem Währungspräfix/-suffix |
file | Datei-Upload-Feld |
image | Bild-Upload mit Größenänderungs-/Zuschnitt-/Wasserzeichen-Optionen |
video | Video-Upload-Feld |
camera | Live-Kameraaufnahme (Foto), gespeichert wie image |
Den vollständigen Optionssatz für file/image/video/camera finden Sie unter Datei- & Bild-Uploads und Medien-, Kamera- & Video-Uploads.
Beispiel: ein Select-Feld
$extra akzeptiert eine einfache Liste (Wert = Label), eine Wert=>Label-Zuordnung oder eine Liste von [Wert, Label]-Paaren:
$xcrud->change_type('status', 'select', '', [
'a' => 'Active',
'i' => 'Inactive',
]);
Beispiel: ein Price-Feld
$length legt die Nachkommastellen fest, $extra legt ein Währungspräfix/-suffix fest:
$xcrud->change_type('unitPrice', 'price', '2', ['prefix' => '$']);