# DataTables ## Annahmen * Nur falls Zeilen selektiert werden sollen: * In jeder SQL-Abfrage muss die erste Spalte eine eindeutige ID zurückliefern. * Diese Spalte muss den Namen `id` bekommen. * Diese Spalte muss nicht als `Column` definiert werden. * Jede Tabellenspalte benötigt einen eindeutigen Namen; für die Zuordnung von Filtern. * Dieser Name korrespondiert mit einem SQL-Spaltennamen bzw. dem Alias. Beispiel: `SELECT projekt.abkuerzung AS projekt_name ... ` dann muss der Spaltenname `projekt_name` und nicht `abkuerzung` heißen. * Jede DataTable benötigt einen eindeutigen Namen. * Für die Zuordnung von Filtern. * Eindeutiger Name wird aus Klassenname generiert, wenn kein Name in der BuildConfig angegeben wird. ## Spaltenarten Siehe `\Xentral\Widgets\DataTable\Column\Column` Klasse. ##### `Column::visible($name, $title, $align = 'left', $width = null)` * Sichtbar * Nicht sortierbar * Nicht durchsuchbar ##### `Column::sortable($name, $title, $align = 'left', $width = null)` * Sichtbar * Sortierbar * Nicht durchsuchbar ##### `Column::searchable($name, $title, $align = 'left', $width = null)` * Sichtbar * Sortierbar * Durchsuchbar ##### `Column::fixed($name, $title, $align = 'left', $width = null)` * Sichtbar * Nicht sortierbar * Nicht durchsuchbar * Für Menü-Spalten und Zeilen-Selektion ##### `Column::hidden($name, $title, $align = 'left', $width = null)` * Initial ausgeblendet; kann eingeblendet werden (Feature noch nicht implementiert) * Nicht sortierbar * Nicht durchsuchbar ## Aufbau ``` ``` ## Verwendung ### Vorlage ```php ```