dongliao3742 2018-03-20 19:26
浏览 133
已采纳

Magento2:传递给父构造的额外参数:

I have this code in my custom controller:

namespace Myweb\CustomArt\Controller\Index;
use Magento\Framework\Controller\ResultFactory;
use Magento\Framework\Filesystem;
class Form extends \Magento\Framework\App\Action\Action
{
    /**
     * Contact action
     *
     * @return void
     */
    /**
     * @var \Magento\Framework\Mail\Template\TransportBuilder
     */

     /**
    * @var Google reCaptcha Options
    */
    private static $_siteVerifyUrl = "https://www.google.com/recaptcha/api/siteverify?";
    private $_secret;
    private static $_version = "php_7.0";
    /**
    * Save Form Data
    *
    * @return array
    */
        protected $context;
        private $fileUploaderFactory;
        private $fileSystem;
        protected $_transportBuilder;
        protected $scopeConfig;
        protected $inlineTranslation;

 public function __construct(
        \Magento\Framework\App\Action\Context $context,
        Filesystem $fileSystem,
        \Magento\Framework\Mail\Template\TransportBuilder $transportBuilder,
        \Magento\Framework\Translate\Inline\StateInterface $inlineTranslation,
        \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
        \Magento\MediaStorage\Model\File\UploaderFactory $fileUploaderFactory

    ) {
        parent::__construct($context, $transportBuilder, $inlineTranslation, $scopeConfig );
        $this->fileUploaderFactory = $fileUploaderFactory;
        $this->fileSystem          = $fileSystem;
        $this->_transportBuilder = $transportBuilder;
        $this->inlineTranslation = $inlineTranslation;
        $this->scopeConfig = $scopeConfig;
    }

I am getting the error like below, when running the command

php bin/magento setup:di:compile

Extra parameters passed to parent construct: $transportBuilder, $inlineTranslation, $scopeConfig. File:

I have followed this code from another post, though I am not facing any issue in working of the module.

  • 写回答

1条回答 默认 最新

  • dsfs23434 2018-03-23 08:34
    关注

    You're extending \Magento\Framework\App\Action\Action whose constructor only has one parameter: \Magento\Framework\App\Action\Context.

    So you should call

    parent::__construct($context);
    

    instead of

    parent::__construct($context, $transportBuilder, $inlineTranslation, $scopeConfig);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?