W Magento 2 jak odbierać tablicę żądań? $_POST
a $_GET
także jak my w Magento 1:
Mage::app()->getRequest()->getPost()
magento2
http-request
zhartaunik
źródło
źródło
Odpowiedzi:
Jeśli próbujesz tego z rozszerzonego kontrolera,
Magento\Framework\App\Action\Action
możesz uzyskać żądanie za pomocą$this->getRequest()->getPost()
.Jeśli jesteś w klasie niestandardowej, musisz wstrzyknąć żądanie do konstruktora.
źródło
\Magento\Framework\App\Request\Http
nie ma metodygetPost
, jesteś tego pewien?Cześć, możesz łatwo uzyskać to w modelach, blokach i kontrolerach, używając:
Lub dodaj
Magento\Framework\App\RequestInterface
do parametrów konstruktora we własnych klasach:źródło
\Magento\Framework\App\RequestInterface
nie ma metodygetPost()
, jesteś tego pewien?$this->getRequest()->getPost();
zwracaZend\Stdlib\Parameters
mi obiekt. Nawet w rdzeniu Magento używa wielu takich połączeń, z parametrem takim jak na przykład wMagento\Sales\Controller\Adminhtml\Order\AddComment
linii 31 jest wywołanie:$data = $this->getRequest()->getPost('history');
Magento\Catalog\Model\Product\Option\ReadHandler
klasę wtyczek tylko w interfejsie API szczegółów produktu?To powinno działać, po prostu przetestuj. Porównaj i zobacz, czego brakuje.
źródło
$this->_request
źródło