Columns
Columns are declared in columnsConfig() and define what the datagrid can render, search, and sort.
protected function columnsConfig(): array
{
return [
new Column('id', 'ID', StringFormatter::class, true, false, true),
new Column('name', 'Name', StringFormatter::class, true, true, true),
new Column('created_at', 'Created at', DateTimeFormatter::class, true, false, true),
];
}
Constructor Arguments
new Column(
name: 'name',
label: 'Name',
formatterClass: StringFormatter::class,
isSortable: true,
isSearchable: true,
isVisible: true,
aliasName: null,
tdClass: '',
thClass: '',
)
Dotted Column Names
Use dotted names when the SQL column needs a table prefix:
The full name is used for query operations. The alias/select name is used when reading transformed resource rows.
Formatters
Built-in formatters include:
StringFormatterDateFormatterDateTimeFormatter
Date formatters return an empty string for null values and throw a clear exception for invalid non-null date values.