Хотя я использую правильное пространство имен, конструктору передается неправильный экземпляр
У меня есть php-файл блока. Код файла блока:
<?php
namespace Vendor\SampleModule1\Block;
use Magento\Framework\View\Element\Template;
use Magento\Framework\View\Element\Template\Context;
use Vendor\SampleModule1\Model\ResrouceModel\Item\Collection;
use Vendor\SampleModule1\Model\ResrouceModel\Item\CollectionFactory;
class Hello extends Template
{
private $collectionFactory;
public function __construct(
Context $context,
CollectionFactory $collectionFactory,
array $data =[]
)
{
$this->collectionFactory = $collectionFactory;
parent::__construct($context, $data);
}
/**
* @return \Vendor\SampleModule1\Model\Item[]
*/
public function getItems()
{
return $this->collectionFactory->create()->getItems();
}
}
Когда я пытаюсь просмотреть представление, ошибка
Неустранимая ошибка: Неперехваченная ошибка типа: Аргумент 1 передан поставщику\samplemodule1\Блок\Привет::__построить() должен быть экземпляр Magento\Framework\Представление\Элемент\Шаблон\Контекст, экземпляр Magento\Framework\ObjectManager\ObjectManager, указанный....
Как это возможно???
1
Author: Manashvi Birla, 2017-09-25
1 answers
Вам необходимо скомпилировать свой код после внесения изменений.
Пожалуйста, сделайте
Php bin/настройка magento:di:компиляция
1
Author: Rajeev K Tomy, 2017-09-25 06:50:24