Magento 2 Error
can anyone tell me what am I doing wrong with this code
<?php
namespace FeedbackAddonControllerIndex;
use MagentoFrameworkAppActionContext;
use FeedbackAddonModelInsertFactory;
class Save extends MagentoFrameworkAppActionAction
{
/**
* @var Test
*/
protected $_test;
protected $_storeManager;
public function __construct(
Context $context,
array $data = ,
MagentoStoreModelStoreManagerInterface $storeManager,
InsertFactory $test
) {
$this->_storeManager = $storeManager;
$this->_test = $test;
parent::__construct($context);
}
public function execute()
{
$post = $this->getRequest()->getPostValue();
$test = $this->_test->create();
$data=array(
'first_name'=> $post['first_name'],
'last_name'=> $post['last_name'],
'email' => $post['email'],
'mobile_no' => $post['mobile_no'],
'feedback_content' => $post['feedback_content']
);
$test->setData($data);
if($test->save())
{
$this->messageManager->addSuccessMessage(__('You saved the data.'));
$templateOptions = array('area' => MagentoFrameworkAppArea::AREA_FRONTEND, 'store' => $this->storeManager->getStore()->getId());
$templateVars = array(
'store' => $this->storeManager->getStore(),
'customer_name' => 'John Doe',
'message' => 'Hello!!.'
);
$from = array('email' => "test@example.com", 'name' => 'Name of Sender');
$this->inlineTranslation->suspend();
$to = array('abc@example.com');
$storeScope = MagentoStoreModelScopeInterface::SCOPE_STORE;
$templateId = $this->scopeConfig->getValue ( 'feedback/custom/email_template', MagentoStoreModelScopeInterface::SCOPE_STORE, $storeId );
$transport = $this->_transportBuilder->setTemplateIdentifier($templateId, $storeScope)->setTemplateOptions($templateOptions)
->setTemplateVars($templateVars)
->setFrom($from)
->addTo($to)
->getTransport();
$transport->sendMessage();
$this->messageManager->addSuccess(__('Mail Sent Successfully'));
$this->inlineTranslation->resume();
}
else
{
$this->messageManager->addErrorMessage(__('Data was not saved.'));
}
$resultRedirect = $this->resultRedirectFactory->create();
$resultRedirect->setPath('*/*/');
return $resultRedirect;
}
}
I am trying to sending mail to the user after saving data but this is generated this error
Fatal error: Uncaught TypeError: Argument 3 passed to FeedbackAddonControllerIndexSaveInterceptor::__construct() must be of the type array, null given, called in /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php on line 111 and defined in /var/www/html/nuluv/generated/code/Feedback/Addon/Controller/Index/Save/Interceptor.php:11 Stack trace: #0 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(111): FeedbackAddonControllerIndexSaveInterceptor->__construct(Object(MagentoFrameworkAppActionContext), Object(MagentoStoreModelStoreManager), NULL, Object(FeedbackAddonModelInsertFactory)) #1 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/Compiled.php(108): MagentoFrameworkObjectManagerFactoryAbstractFactory->createObject('FeedbackAddon...', Array) #2 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/ObjectManager.php(56): MagentoFrameworkObjectManagerFactoryCompiled->create('FeedbackAddon...', in /var/www/html/nuluv/generated/code/Feedback/Addon/Controller/Index/Save/Interceptor.php on line 11
magento2 controllers magento2.2.6
add a comment |
can anyone tell me what am I doing wrong with this code
<?php
namespace FeedbackAddonControllerIndex;
use MagentoFrameworkAppActionContext;
use FeedbackAddonModelInsertFactory;
class Save extends MagentoFrameworkAppActionAction
{
/**
* @var Test
*/
protected $_test;
protected $_storeManager;
public function __construct(
Context $context,
array $data = ,
MagentoStoreModelStoreManagerInterface $storeManager,
InsertFactory $test
) {
$this->_storeManager = $storeManager;
$this->_test = $test;
parent::__construct($context);
}
public function execute()
{
$post = $this->getRequest()->getPostValue();
$test = $this->_test->create();
$data=array(
'first_name'=> $post['first_name'],
'last_name'=> $post['last_name'],
'email' => $post['email'],
'mobile_no' => $post['mobile_no'],
'feedback_content' => $post['feedback_content']
);
$test->setData($data);
if($test->save())
{
$this->messageManager->addSuccessMessage(__('You saved the data.'));
$templateOptions = array('area' => MagentoFrameworkAppArea::AREA_FRONTEND, 'store' => $this->storeManager->getStore()->getId());
$templateVars = array(
'store' => $this->storeManager->getStore(),
'customer_name' => 'John Doe',
'message' => 'Hello!!.'
);
$from = array('email' => "test@example.com", 'name' => 'Name of Sender');
$this->inlineTranslation->suspend();
$to = array('abc@example.com');
$storeScope = MagentoStoreModelScopeInterface::SCOPE_STORE;
$templateId = $this->scopeConfig->getValue ( 'feedback/custom/email_template', MagentoStoreModelScopeInterface::SCOPE_STORE, $storeId );
$transport = $this->_transportBuilder->setTemplateIdentifier($templateId, $storeScope)->setTemplateOptions($templateOptions)
->setTemplateVars($templateVars)
->setFrom($from)
->addTo($to)
->getTransport();
$transport->sendMessage();
$this->messageManager->addSuccess(__('Mail Sent Successfully'));
$this->inlineTranslation->resume();
}
else
{
$this->messageManager->addErrorMessage(__('Data was not saved.'));
}
$resultRedirect = $this->resultRedirectFactory->create();
$resultRedirect->setPath('*/*/');
return $resultRedirect;
}
}
I am trying to sending mail to the user after saving data but this is generated this error
Fatal error: Uncaught TypeError: Argument 3 passed to FeedbackAddonControllerIndexSaveInterceptor::__construct() must be of the type array, null given, called in /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php on line 111 and defined in /var/www/html/nuluv/generated/code/Feedback/Addon/Controller/Index/Save/Interceptor.php:11 Stack trace: #0 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(111): FeedbackAddonControllerIndexSaveInterceptor->__construct(Object(MagentoFrameworkAppActionContext), Object(MagentoStoreModelStoreManager), NULL, Object(FeedbackAddonModelInsertFactory)) #1 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/Compiled.php(108): MagentoFrameworkObjectManagerFactoryAbstractFactory->createObject('FeedbackAddon...', Array) #2 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/ObjectManager.php(56): MagentoFrameworkObjectManagerFactoryCompiled->create('FeedbackAddon...', in /var/www/html/nuluv/generated/code/Feedback/Addon/Controller/Index/Save/Interceptor.php on line 11
magento2 controllers magento2.2.6
Try to run following command & then check : php bin/magento s:up && php bin/magento s:di:c
– Nauman m. Mansuri
Jan 16 at 9:22
add a comment |
can anyone tell me what am I doing wrong with this code
<?php
namespace FeedbackAddonControllerIndex;
use MagentoFrameworkAppActionContext;
use FeedbackAddonModelInsertFactory;
class Save extends MagentoFrameworkAppActionAction
{
/**
* @var Test
*/
protected $_test;
protected $_storeManager;
public function __construct(
Context $context,
array $data = ,
MagentoStoreModelStoreManagerInterface $storeManager,
InsertFactory $test
) {
$this->_storeManager = $storeManager;
$this->_test = $test;
parent::__construct($context);
}
public function execute()
{
$post = $this->getRequest()->getPostValue();
$test = $this->_test->create();
$data=array(
'first_name'=> $post['first_name'],
'last_name'=> $post['last_name'],
'email' => $post['email'],
'mobile_no' => $post['mobile_no'],
'feedback_content' => $post['feedback_content']
);
$test->setData($data);
if($test->save())
{
$this->messageManager->addSuccessMessage(__('You saved the data.'));
$templateOptions = array('area' => MagentoFrameworkAppArea::AREA_FRONTEND, 'store' => $this->storeManager->getStore()->getId());
$templateVars = array(
'store' => $this->storeManager->getStore(),
'customer_name' => 'John Doe',
'message' => 'Hello!!.'
);
$from = array('email' => "test@example.com", 'name' => 'Name of Sender');
$this->inlineTranslation->suspend();
$to = array('abc@example.com');
$storeScope = MagentoStoreModelScopeInterface::SCOPE_STORE;
$templateId = $this->scopeConfig->getValue ( 'feedback/custom/email_template', MagentoStoreModelScopeInterface::SCOPE_STORE, $storeId );
$transport = $this->_transportBuilder->setTemplateIdentifier($templateId, $storeScope)->setTemplateOptions($templateOptions)
->setTemplateVars($templateVars)
->setFrom($from)
->addTo($to)
->getTransport();
$transport->sendMessage();
$this->messageManager->addSuccess(__('Mail Sent Successfully'));
$this->inlineTranslation->resume();
}
else
{
$this->messageManager->addErrorMessage(__('Data was not saved.'));
}
$resultRedirect = $this->resultRedirectFactory->create();
$resultRedirect->setPath('*/*/');
return $resultRedirect;
}
}
I am trying to sending mail to the user after saving data but this is generated this error
Fatal error: Uncaught TypeError: Argument 3 passed to FeedbackAddonControllerIndexSaveInterceptor::__construct() must be of the type array, null given, called in /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php on line 111 and defined in /var/www/html/nuluv/generated/code/Feedback/Addon/Controller/Index/Save/Interceptor.php:11 Stack trace: #0 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(111): FeedbackAddonControllerIndexSaveInterceptor->__construct(Object(MagentoFrameworkAppActionContext), Object(MagentoStoreModelStoreManager), NULL, Object(FeedbackAddonModelInsertFactory)) #1 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/Compiled.php(108): MagentoFrameworkObjectManagerFactoryAbstractFactory->createObject('FeedbackAddon...', Array) #2 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/ObjectManager.php(56): MagentoFrameworkObjectManagerFactoryCompiled->create('FeedbackAddon...', in /var/www/html/nuluv/generated/code/Feedback/Addon/Controller/Index/Save/Interceptor.php on line 11
magento2 controllers magento2.2.6
can anyone tell me what am I doing wrong with this code
<?php
namespace FeedbackAddonControllerIndex;
use MagentoFrameworkAppActionContext;
use FeedbackAddonModelInsertFactory;
class Save extends MagentoFrameworkAppActionAction
{
/**
* @var Test
*/
protected $_test;
protected $_storeManager;
public function __construct(
Context $context,
array $data = ,
MagentoStoreModelStoreManagerInterface $storeManager,
InsertFactory $test
) {
$this->_storeManager = $storeManager;
$this->_test = $test;
parent::__construct($context);
}
public function execute()
{
$post = $this->getRequest()->getPostValue();
$test = $this->_test->create();
$data=array(
'first_name'=> $post['first_name'],
'last_name'=> $post['last_name'],
'email' => $post['email'],
'mobile_no' => $post['mobile_no'],
'feedback_content' => $post['feedback_content']
);
$test->setData($data);
if($test->save())
{
$this->messageManager->addSuccessMessage(__('You saved the data.'));
$templateOptions = array('area' => MagentoFrameworkAppArea::AREA_FRONTEND, 'store' => $this->storeManager->getStore()->getId());
$templateVars = array(
'store' => $this->storeManager->getStore(),
'customer_name' => 'John Doe',
'message' => 'Hello!!.'
);
$from = array('email' => "test@example.com", 'name' => 'Name of Sender');
$this->inlineTranslation->suspend();
$to = array('abc@example.com');
$storeScope = MagentoStoreModelScopeInterface::SCOPE_STORE;
$templateId = $this->scopeConfig->getValue ( 'feedback/custom/email_template', MagentoStoreModelScopeInterface::SCOPE_STORE, $storeId );
$transport = $this->_transportBuilder->setTemplateIdentifier($templateId, $storeScope)->setTemplateOptions($templateOptions)
->setTemplateVars($templateVars)
->setFrom($from)
->addTo($to)
->getTransport();
$transport->sendMessage();
$this->messageManager->addSuccess(__('Mail Sent Successfully'));
$this->inlineTranslation->resume();
}
else
{
$this->messageManager->addErrorMessage(__('Data was not saved.'));
}
$resultRedirect = $this->resultRedirectFactory->create();
$resultRedirect->setPath('*/*/');
return $resultRedirect;
}
}
I am trying to sending mail to the user after saving data but this is generated this error
Fatal error: Uncaught TypeError: Argument 3 passed to FeedbackAddonControllerIndexSaveInterceptor::__construct() must be of the type array, null given, called in /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php on line 111 and defined in /var/www/html/nuluv/generated/code/Feedback/Addon/Controller/Index/Save/Interceptor.php:11 Stack trace: #0 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(111): FeedbackAddonControllerIndexSaveInterceptor->__construct(Object(MagentoFrameworkAppActionContext), Object(MagentoStoreModelStoreManager), NULL, Object(FeedbackAddonModelInsertFactory)) #1 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/Factory/Compiled.php(108): MagentoFrameworkObjectManagerFactoryAbstractFactory->createObject('FeedbackAddon...', Array) #2 /var/www/html/nuluv/vendor/magento/framework/ObjectManager/ObjectManager.php(56): MagentoFrameworkObjectManagerFactoryCompiled->create('FeedbackAddon...', in /var/www/html/nuluv/generated/code/Feedback/Addon/Controller/Index/Save/Interceptor.php on line 11
magento2 controllers magento2.2.6
magento2 controllers magento2.2.6
edited Jan 16 at 9:27
Manashvi Birla
6,12241840
6,12241840
asked Jan 16 at 9:19
Akash AgrawalAkash Agrawal
254
254
Try to run following command & then check : php bin/magento s:up && php bin/magento s:di:c
– Nauman m. Mansuri
Jan 16 at 9:22
add a comment |
Try to run following command & then check : php bin/magento s:up && php bin/magento s:di:c
– Nauman m. Mansuri
Jan 16 at 9:22
Try to run following command & then check : php bin/magento s:up && php bin/magento s:di:c
– Nauman m. Mansuri
Jan 16 at 9:22
Try to run following command & then check : php bin/magento s:up && php bin/magento s:di:c
– Nauman m. Mansuri
Jan 16 at 9:22
add a comment |
1 Answer
1
active
oldest
votes
make your constructor receive the mandatory parameters before the optional ones:
public function __construct(
Context $context,
MagentoStoreModelStoreManagerInterface $storeManager,
InsertFactory $test,
array $data =
) {
$this->_storeManager = $storeManager;
$this->_test = $test;
parent::__construct($context, $data);
}
and clear the contents of folder generated/code.
hi thanks for the help! I tired your code buy its generated error - Extra parameters passed to parent construct: $data. File: /var/www/html/nuluv/app/code/Feedback/Addon/Controller/Index/Save.php Total Errors Count: 1
– Akash Agrawal
Jan 16 at 9:53
then remove $data from parent::__construct($context, $data);
– Marius♦
Jan 16 at 12:06
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "479"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f257974%2fmagento-2-error%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
make your constructor receive the mandatory parameters before the optional ones:
public function __construct(
Context $context,
MagentoStoreModelStoreManagerInterface $storeManager,
InsertFactory $test,
array $data =
) {
$this->_storeManager = $storeManager;
$this->_test = $test;
parent::__construct($context, $data);
}
and clear the contents of folder generated/code.
hi thanks for the help! I tired your code buy its generated error - Extra parameters passed to parent construct: $data. File: /var/www/html/nuluv/app/code/Feedback/Addon/Controller/Index/Save.php Total Errors Count: 1
– Akash Agrawal
Jan 16 at 9:53
then remove $data from parent::__construct($context, $data);
– Marius♦
Jan 16 at 12:06
add a comment |
make your constructor receive the mandatory parameters before the optional ones:
public function __construct(
Context $context,
MagentoStoreModelStoreManagerInterface $storeManager,
InsertFactory $test,
array $data =
) {
$this->_storeManager = $storeManager;
$this->_test = $test;
parent::__construct($context, $data);
}
and clear the contents of folder generated/code.
hi thanks for the help! I tired your code buy its generated error - Extra parameters passed to parent construct: $data. File: /var/www/html/nuluv/app/code/Feedback/Addon/Controller/Index/Save.php Total Errors Count: 1
– Akash Agrawal
Jan 16 at 9:53
then remove $data from parent::__construct($context, $data);
– Marius♦
Jan 16 at 12:06
add a comment |
make your constructor receive the mandatory parameters before the optional ones:
public function __construct(
Context $context,
MagentoStoreModelStoreManagerInterface $storeManager,
InsertFactory $test,
array $data =
) {
$this->_storeManager = $storeManager;
$this->_test = $test;
parent::__construct($context, $data);
}
and clear the contents of folder generated/code.
make your constructor receive the mandatory parameters before the optional ones:
public function __construct(
Context $context,
MagentoStoreModelStoreManagerInterface $storeManager,
InsertFactory $test,
array $data =
) {
$this->_storeManager = $storeManager;
$this->_test = $test;
parent::__construct($context, $data);
}
and clear the contents of folder generated/code.
answered Jan 16 at 9:43
Marius♦Marius
164k28312666
164k28312666
hi thanks for the help! I tired your code buy its generated error - Extra parameters passed to parent construct: $data. File: /var/www/html/nuluv/app/code/Feedback/Addon/Controller/Index/Save.php Total Errors Count: 1
– Akash Agrawal
Jan 16 at 9:53
then remove $data from parent::__construct($context, $data);
– Marius♦
Jan 16 at 12:06
add a comment |
hi thanks for the help! I tired your code buy its generated error - Extra parameters passed to parent construct: $data. File: /var/www/html/nuluv/app/code/Feedback/Addon/Controller/Index/Save.php Total Errors Count: 1
– Akash Agrawal
Jan 16 at 9:53
then remove $data from parent::__construct($context, $data);
– Marius♦
Jan 16 at 12:06
hi thanks for the help! I tired your code buy its generated error - Extra parameters passed to parent construct: $data. File: /var/www/html/nuluv/app/code/Feedback/Addon/Controller/Index/Save.php Total Errors Count: 1
– Akash Agrawal
Jan 16 at 9:53
hi thanks for the help! I tired your code buy its generated error - Extra parameters passed to parent construct: $data. File: /var/www/html/nuluv/app/code/Feedback/Addon/Controller/Index/Save.php Total Errors Count: 1
– Akash Agrawal
Jan 16 at 9:53
then remove $data from parent::__construct($context, $data);
– Marius♦
Jan 16 at 12:06
then remove $data from parent::__construct($context, $data);
– Marius♦
Jan 16 at 12:06
add a comment |
Thanks for contributing an answer to Magento Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f257974%2fmagento-2-error%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Try to run following command & then check : php bin/magento s:up && php bin/magento s:di:c
– Nauman m. Mansuri
Jan 16 at 9:22