Ошибка: вызов функции-члена create () в null в действии контроллера - PullRequest
0 голосов
/ 05 октября 2018

Вот мой класс действий контроллера

<?php
namespace Felix\HelloMod\Controller\Files;
use Magento\Framework\App\Action\Action;
use Magento\Framework\App\Action\Context;
use Magento\Framework\View\Result\PageFactory;

class ProductFiles extends Action
{
    protected $_pagefactory;
    public function _construct(Context $context, PageFactory $pageFactory){
        $this->_pagefactory = $pageFactory;
        return parent::_construct($context);
    }
    public function execute(){
        return $this->_pagefactory->create();
    }
}

У меня следующая ошибка:

Неустранимая ошибка: Uncaught Ошибка: вызов функции-члена create () для nullв C: \ xampp \ htdocs \ Mage2 \ app \ code \ Felix \ HelloMod \ Controller \ Files \ ProductFiles.php: 15 Трассировка стека: # 0 C: \ xampp \ htdocs \ Mage2 \ generate \ code \ Felix \ HelloMod \ Controller\ Files \ ProductFiles \ Interceptor.php (37): Felix \ HelloMod \ Controller \ Files \ ProductFiles-> execute () # 1 C: \ xampp \ htdocs \ Mage2 \ vendor \ magento \ framework \ App \ Action \ Action.php(107): Felix \ HelloMod \ Controller \ Files \ ProductFiles \ Interceptor-> execute () # 2 C: \ xampp \ htdocs \ Mage2 \ vendor \ magento \ framework \ Interception \ Interceptor.php (58): Magento \ Framework \App \ Action \ Action-> dispatch (Объект (Magento \ Framework \ App \ Request \ Http)) # 3 C: \ xampp \ htdocs \ Mage2 \ vendor \ magento \ framework \ Interception \ Interceptor.php (138): Феликс \HelloMod \ Controller \ Files \ ProductFiles \ Interceptor -> ___ callParent ('dispatch', Array) # 4 C: \ xampp \ htdocs \ Mage2 \ vendor \ magento \ framework \ Interception \ Interceptor.php (153): Felix \ HelloMod \ Controller \ Files \ ProductFiles \ Interceptor-> Magento \ Framework \ Interception {closure} (Объект (Magento \ Framework в C: \ xampp \ htdocs \ Mage2 \ app \ code \)Felix \ HelloMod \ Controller \ Files \ ProductFiles.php в строке 15

1 Ответ

0 голосов
/ 05 октября 2018

Я пропустил двойное подчеркивание в методе конструктора и запустил установку php bin / magento: di: compile, и это сработало.

<?php
namespace Felix\HelloMod\Controller\Files;
use Magento\Framework\App\Action\Action;
use Magento\Framework\App\Action\Context;
use Magento\Framework\View\Result\PageFactory;

class ProductFiles extends Action
{
    protected $_pagefactory;
    public function __construct(Context $context, PageFactory $pageFactory){
        $this->_pagefactory = $pageFactory;
        return parent::__construct($context);
    }
    public function execute(){
        return $this->_pagefactory->create();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...