From ddff82cbafc3c9b0e72f80fc60d8ab62c6ee6dce Mon Sep 17 00:00:00 2001 From: Oh My Felix Date: Tue, 23 Jun 2026 15:39:27 +0000 Subject: [PATCH] Docs: move documentation to README Co-authored-by: Felix --- .docs/README.md | 63 ---------------------------------------- README.md | 76 ++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 66 insertions(+), 73 deletions(-) delete mode 100644 .docs/README.md diff --git a/.docs/README.md b/.docs/README.md deleted file mode 100644 index 16b38c9..0000000 --- a/.docs/README.md +++ /dev/null @@ -1,63 +0,0 @@ -# Contributte\datagrid-nette-database-data-source - -## Content - -- [Usage - how use it](#usage) - -## Usage - -```php -/** - * @var Nette\Database\Context - * @inject - */ -public $ndb; - - -public function createComponentNetteGrid($name) -{ - /** - * @type Ublaboo\DataGrid\DataGrid - */ - $grid = new DataGrid($this, $name); - - $query = - 'SELECT p.*, GROUP_CONCAT(v.code SEPARATOR ", ") AS variants - FROM product p - LEFT JOIN product_variant p_v - ON p_v.product_id = p.id - WHERE p.deleted IS NULL - AND (product.status = ? OR product.status = ?)'; - - $params = [1, 2]; - - /** - * @var Ublaboo\NetteDatabaseDataSource\NetteDatabaseDataSource - * - * @param Nette\Database\Context - * @param $query - * @param $params|NULL - */ - $datasource = new NetteDatabaseDataSource($this->ndb, $query, $params); - - $grid->setDataSource($datasource); - - $grid->addColumnText('name', 'Name') - ->setSortable(); - - $grid->addColumnNumber('id', 'Id') - ->setSortable(); - - $grid->addColumnDateTime('created', 'Created'); - - $grid->addFilterDateRange('created', 'Created:'); - - $grid->addFilterText('name', 'Name and id', ['id', 'name']); - - $grid->addFilterSelect('status', 'Status', ['' => 'All', 1 => 'Online', 0 => 'Ofline', 2 => 'Standby']); - - /** - * Etc - */ -} -``` diff --git a/README.md b/README.md index 1963f7e..17419e2 100644 --- a/README.md +++ b/README.md @@ -17,25 +17,81 @@ Website 🚀 contributte.org | Contact 👨🏻‍💻 paveljanda.com, f3l1x.io | Twitter 🐦 @contributte

-## Usage +Nette Database data source adapter for [ublaboo/datagrid](https://github.com/contributte/datagrid), useful for grids backed by custom SQL queries. + +## Versions + +| State | Version | Branch | PHP | +|--------|---------|--------|------| +| dev | ~3.0.0 | master | ^7.2 | +| stable | ~2.0.0 | master | ^7.2 | +| stable | ~1.1.0 | master | ^5.6 | + +## Installation -To install latest version of `contributte/datagrid-nette-database-data-source` use [Composer](https://getcomposer.org). +To install latest version of `ublaboo/datagrid-nette-database-data-source` use [Composer](https://getcomposer.org). ```bash composer require ublaboo/datagrid-nette-database-data-source ``` -## Documentation +## Usage -For details on how to use this package, check out our [documentation](.docs). +```php +/** + * @var Nette\Database\Context + * @inject + */ +public $ndb; -## Versions -| State | Version - | Branch | PHP | -|--------|------------|--------|------| -| dev | ~3.0.0 | master | ^7.2 | -| stable | ~2.0.0 | master | ^7.2 | -| stable | ~1.1.0 | master | ^5.6 | +public function createComponentNetteGrid($name) +{ + /** + * @type Ublaboo\DataGrid\DataGrid + */ + $grid = new DataGrid($this, $name); + + $query = + 'SELECT p.*, GROUP_CONCAT(v.code SEPARATOR ", ") AS variants + FROM product p + LEFT JOIN product_variant p_v + ON p_v.product_id = p.id + WHERE p.deleted IS NULL + AND (product.status = ? OR product.status = ?)'; + + $params = [1, 2]; + + /** + * @var Ublaboo\NetteDatabaseDataSource\NetteDatabaseDataSource + * + * @param Nette\Database\Context + * @param $query + * @param $params|NULL + */ + $datasource = new NetteDatabaseDataSource($this->ndb, $query, $params); + + $grid->setDataSource($datasource); + + $grid->addColumnText('name', 'Name') + ->setSortable(); + + $grid->addColumnNumber('id', 'Id') + ->setSortable(); + + $grid->addColumnDateTime('created', 'Created'); + + $grid->addFilterDateRange('created', 'Created:'); + + $grid->addFilterText('name', 'Name and id', ['id', 'name']); + + $grid->addFilterSelect('status', 'Status', ['' => 'All', 1 => 'Online', 0 => 'Ofline', 2 => 'Standby']); + + /** + * Etc + */ +} +``` ## Development