Id Name Birthday Status
641 Dangerous Kangaroo Party 11. 11. 1947 inactive
642 Nasty Narwhal 4. 7. 1937 deleted
643 Nice Nightingale 6. 9. 1971 deleted
644 Mushy Mole 11. 9. 1938 deleted
645 Adorable Anteater 21. 2. 1937 inactive
646 Maniac Spatula Tycoon 9. 2. 1932 inactive
647 Confused Cheetah 10. 12. 1948 inactive
648 Shy Serval 21. 12. 1995 active
649 Demonic Sex Express 26. 10. 1945 active
650 Jittery Jay 14. 10. 1930 inactive
651 Fisher Price Yeti Dancers 8. 12. 1969 inactive
652 Cute Chicken 27. 8. 1960 inactive
653 Fair Flatworm 18. 4. 1997 active
654 Joyous Jackal 7. 6. 1997 active
655 Adventurous Armadillo 16. 8. 1961 active
656 Deadly Bazooka Hunter 4. 1. 1966 deleted
657 Blissful Amish Combat 17. 2. 1941 inactive
658 Fancy Falcon 11. 12. 1947 deleted
659 First-Person Katana Task Force 7. 11. 1966 active
660 Drab Deer 18. 6. 1961 active
( Items: 641 - 660 from 1020 )
  See the code below 👇 or see GitHub
public function createComponentGrid(): DataGrid
{
	$grid = new DataGrid();

	$grid->setDataSource($this->dibiConnection->select('*')->from('users'));

	$grid->setItemsPerPageList([20, 50, 100]);

	$grid->addColumnNumber('id', 'Id')
		->setAlign('start')
		->setSortable();

	$grid->addColumnText('name', 'Name')
		->setSortable()
		->setFilterText();

	$grid->addColumnDateTime('birth_date', 'Birthday');

	$grid->addColumnText('status', 'Status');

	$grid->addExportCallback('Dump to ajax rq', function (array $rows, DataGrid $grid): void {
		echo 'All fetched data were passed to export callback. Size of data: ';
		echo count($rows);
		die;
	})->setAjax();

	$grid->addExportCsvFiltered('Csv export (filtered)', 'examples.csv')
		->setTitle('Csv export (filtered)');

	$columnName = new ColumnText($grid, 'name', 'name', 'Name');
	$columnEven = (new ColumnText($grid, 'even', 'even', 'Even ID (yes/no)'))
		->setRenderer(
			fn ($item) => $item['id'] % 2 === 0 ? 'No' : 'Yes'
		);

	$grid->addExportCsv('Csv export', 'examples-all.csv')
		->setTitle('Csv export')
		->setColumns([
			$columnName,
			$columnEven,
		]);

	return $grid;
}