Controller Structure of Magento2
Before Creating Controller visit Magento Directory Structure
It set response in json
Before Creating Controller visit Magento Directory Structure
namespace NameSpace\Module\Controller\Adminhtml\Foldername;
use \Magento\Backend\App\Action;
use \Magento\Backend\App\Action\Context;
use \Magento\Framework\View\Result\PageFactory;
class ControllerName extends Action
{
protected $_resultPageFactory;
protected $_resultPage;
public function __construct(Context $context, PageFactory $resultPageFactory)
{
parent::__construct($context);
$this->_resultPageFactory = $resultPageFactory;
}
public function execute()
{
$this->_setPageData();
return $this->getResultPage();
}
public function getResultPage()
{
if (is_null($this->_resultPage)) {
$this->_resultPage = $this->_resultPageFactory->create();
}
return $this->_resultPage;
}
protected function _setPageData()
{
$resultPage = $this->getResultPage();
$resultPage->setActiveMenu('NameSpace_Module::module');
$resultPage->getConfig()->getTitle()->prepend(__('Title Name'));
return $this;
}
}
Ajax Controller Structure of Magento2 : It set response in json
namespace NameSpace\Module\Controller\Adminhtml;
use Magento\Backend\App\Action;
use Magento\Backend\App\Action\Context;
class GetSupplierAction extends Action
{
protected $resultJsonFactory;
protected $helper;
public function __construct(
Context $context,
\NameSpace\Module\Helper\Data $helper,
\Magento\Framework\Controller\Result\JsonFactory $resultJsonFactory
)
{
parent::__construct($context);
$this->helper = $helper;
$this->resultJsonFactory = $resultJsonFactory;
}
protected function _isAllowed()
{
return true;
}
public function execute()
{
$result = $this->resultJsonFactory->create();
$data = $this->getRequest()->getPostValue();
$supplierDetail = $this->helper->getFunctionName($data['supplierId']);
return $result->setData($supplierDetail);
}
}
Comments
Post a Comment