1. Go to this page and download the library: Download mage/grid library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
mage / grid example snippets
namespace Your\Module\Controller\Adminhtml\YourGrid;
use Magento\Backend\App\Action;
use Magento\Framework\View\Result\PageFactory;
class Index extends Action
{
protected $resultPageFactory;
public function __construct(
Action\Context $context,
PageFactory $resultPageFactory
) {
parent::__construct($context);
$this->resultPageFactory = $resultPageFactory;
}
protected function _isAllowed()
{
return $this->_authorization->isAllowed('Your_Module::your_grid');
}
public function execute()
{
$resultPage = $this->resultPageFactory->create();
$resultPage->setActiveMenu('Your_Module::your_grid');
$resultPage->getConfig()->getTitle()->prepend(__('Your Grid Title'));
return $resultPage;
}
}
namespace Your\Module\ViewModel;
use Mage\Grid\ViewModel\GenericViewModelGrid;
class YourCustomViewModel extends GenericViewModelGrid
{
// Add your custom methods here
}
namespace Your\Module\Model\DataProcessor;
use Mage\Grid\Api\DataProcessorInterface;
class CustomProcessor implements DataProcessorInterface
{
public function process($field, $value, $row)
{
// Your custom processing logic
return $processedValue;
}
}
<?= $block->getAditionalHTML()
namespace Your\Module\Model\Source;
use Mage\Grid\Model\Fields\DataSourceInterface;
use Magento\Framework\App\ResourceConnection;
class CustomSource implements DataSourceInterface
{
protected $resource;
public function __construct(ResourceConnection $resource)
{
$this->resource = $resource;
}
public function getValues($field)
{
// Your custom logic to fetch values
return ['value1', 'value2', 'value3'];
}
}