/ / कार्ट में प्रोग्राम जोड़ें उत्पाद Mag Mag22 - php, magento, मॉड्यूल, magento2

कार्टेटात्मक रूप से Magento2 - php, magento, मॉड्यूल, magento2 कार्ट में उत्पाद जोड़ें

HI मैं एक मॉड्यूल बना रहा हूँ जिसमें मैं कंट्रोलर के माध्यम से कार्ट में एक उत्पाद जोड़ रहा हूँ। लेकिन नीचे की त्रुटि है

पुनर्प्राप्त करने योग्य त्रुटि: तर्क 2 पास हुआ EecomAtcControllerAtcIndex :: __ निर्माण () का एक उदाहरण होना चाहिए MagentoFrameworkViewResultPageFactory, का उदाहरण MagentoFrameworkAppCacheTypeList दिया, में बुलाया सी: wampwwwproductzoomvargenerationEecomAtcControllerAtcIndexInterceptor.php 14 लाइन पर और में परिभाषित किया गया सी: wampwwwproductzoomappcodeEecomAtcControllerAtcIndex.php पंक्ति 21

नीचे मेरा कोड है

namespace EecomAtcControllerAtc;

class Index extends MagentoFrameworkAppActionAction {

/**
* @var MagentoCheckoutModelCart
*/
protected $cart;
/**
* @var MagentoCatalogModelProduct
*/
protected $product;

public function __construct(
MagentoFrameworkAppActionContext $context,
MagentoFrameworkViewResultPageFactory $resultPageFactory,
MagentoCatalogModelProduct $product,
MagentoCheckoutModelCart $cart
) {
$this->resultPageFactory = $resultPageFactory;
$this->_customerSession = $customerSession;
$this->cart = $cart;
$this->product = $product;
parent::__construct($context);
}
public function execute()
{
try {
$params = array();
$params["qty"] = "1";//product quantity
/*get product id*/
$pId = "1";//productId
$_product = $this->product->load($pId);
if ($_product) {
$this->cart->addProduct($_product, $params);
$this->cart->save();
}

$this->messageManager->addSuccess(__("Add to cart successfully."));
} catch (MagentoFrameworkExceptionLocalizedException $e) {
$this->messageManager->addException(
$e,
__("%1", $e->getMessage())
);
} catch (Exception $e) {
$this->messageManager->addException($e, __("error."));
}
/*cart page*/
//$this->getResponse()->setRedirect("/checkout/cart/index");


}
}

कृपया सुझाव दें कि मैं कहां गलती कर रहा हूं

उत्तर:

जवाब के लिए 3 № 1

आपको शायद अपने को हटाने की आवश्यकता है var/generation फ़ोल्डर, चूंकि आपने अपने निर्माता के हस्ताक्षर बदल दिए होंगे।


जवाब के लिए 0 № 2

कृपया इसे आजमाएं

 <?php
namespace WebkulHelloControllerIndex;

use MagentoFrameworkAppActionContext;
use MagentoFrameworkViewResultPageFactory;

class AddProducttocart extends MagentoCustomerControllerAbstractAccount
{
/**
* @var PageFactory
*/
protected $resultPageFactory;
/**
* @var MagentoFrameworkDataFormFormKey
*/
protected $formKey;
/**
* @param Context $context
* @param PageFactory $resultPageFactory
*/
public function __construct(
Context $context,
MagentoFrameworkDataFormFormKey $formKey,
PageFactory $resultPageFactory
) {
parent::__construct($context);
$this->formKey = $formKey;
$this->resultPageFactory = $resultPageFactory;
}

/**
*
* @return MagentoFrameworkViewResultPage
*/
public function execute()
{
$resultPage = $this->resultPageFactory->create();
$params = array(
"form_key" => $this->formKey->getFormKey(),
"product" =>12,//product Id
"qty"   =>1,//quantity of product
"price" =>100 //product price
);
$this->_redirect("checkout/cart/add/form_key/", $params);
/** @var MagentoFrameworkViewResultPage $resultPage */
return $resultPage;
}
}