Id Name Birthday Age
761 Vivacious Vendace 10. 2. 1948 76
762 Grotesque Gannet 6. 8. 1987 37
763 Doubtful Deer 7. 7. 1930 94
764 Grieving Grouse 19. 6. 1949 75
765 Insane Rugby of Might and Magic 24. 1. 1996 28
766 Unpleasant Volleyball Caper 22. 8. 1973 51
767 Heavy Chase Explosion 26. 4. 1966 58
768 Friendly Fish 21. 10. 1970 54
769 Lost Puzzle Voyage 1. 11. 1979 45
770 The Six Million Dollar Sniper Tycoon 4. 7. 1998 26
771 Enchanting Echidna 3. 2. 1981 43
772 BudgetSoft Presents: Plumber Train 4. 3. 1965 59
773 Future Quiz Desperadoes 24. 9. 1948 76
774 Psycho Banana Overlords 8. 9. 1961 63
775 Thankful Teira 15. 5. 1998 26
776 College Dance Siege 22. 9. 1951 73
777 Rich Reindeer 2. 8. 1957 67
778 Heroic Graveyard Fiesta 20. 12. 1963 60
779 Annoyed Anteater 26. 5. 1964 60
780 Confused Cheetah 5. 9. 1960 64
( Items: 761 - 780 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], true);

	$grid->addColumnText('id', 'Id')
		->setSortable();

	$grid->addColumnText('email', 'E-mail')
		->setSortable()
		->setFilterText();

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

	$grid->addColumnDateTime('birth_date', 'Birthday')
		->setFormat('j. n. Y');

	$grid->addColumnNumber('age', 'Age')
		->setRenderer(fn (Row $row): ?int => DateTime::fromSafe($row->asDateTime('birth_date'))?->diff(new DateTime())->y);

	return $grid;
}