Id Name Birthday Status
101 Elite Grizzly Bear Insanity 4. 9. 1945 deleted
102 Legendary Yak in Africa 14. 2. 1982 active
103 Testy Tiger 25. 8. 1958 deleted
104 Professional Cheese Trivia 27. 2. 1979 inactive
105 Thoughtful Teira 24. 7. 1943 deleted
106 Unstoppable Transvestite Country 21. 5. 1948 inactive
107 Blue-eyed Barracuda 28. 6. 1993 deleted
108 Motionless Macaw 18. 10. 1997 inactive
109 Mighty Helicopter Special Edition 9. 9. 1992 active
110 Mystical Volleyball Dudes 26. 2. 1968 deleted
111 Neon Driving Squadron 6. 4. 1952 active
112 Lazy Locust 13. 5. 1997 deleted
113 Luigi Quantum Freak 12. 6. 1986 deleted
114 Profane Buddhist Dystopia 6. 7. 1996 active
115 Elegant Bowling Fight 24. 11. 1932 active
116 Delightful Duck 18. 6. 1963 active
117 Bizarre Kangaroo - 2nd Impact 23. 12. 1964 active
118 Creepy Cicada 13. 7. 1953 inactive
119 Transvestite Plumber Feud 19. 8. 1941 deleted
120 Ugly Unicorn 12. 1. 1938 deleted
( Items: 101 - 120 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;
}