在Magento 2.2中,我已经创建了一个模块,并且出现了此错误。
未捕获的TypeError:传递给__construct()的参数1必须是 Magento \ Backend \ Block \ Template \ Context的实例, Magento \ Framework \ ObjectManager \ ObjectManager给出
我的文件路径app\code\Namespace\Modulename\Block\Adminhtml\Exporter\Edit\Tab\Form.php
<?php
namespace Namespace\Modulename\Block\Adminhtml\Exporter\Edit\Tab;
class Form extends \Magento\Backend\Block\Widget\Form\Generic implements \Magento\Backend\Block\Widget\Tab\TabInterface
{
protected $exporter;
public function __construct(
\Magento\Backend\Block\Template\Context $context,
\Magento\Framework\Registry $registry,
\Magento\Framework\Data\FormFactory $formFactory,
\Raveinfosys\Orderexporter\Model\Exporter $exporter,
array $data = []
) {
$this->exporter = $exporter;
$this->_formFactory = $formFactory;
parent::__construct($context, $registry, $formFactory, $data);
}
他们在
处显示错误公共函数__construct
答案 0 :(得分:0)
通常,Magento将构造函数缓存在var/generation
文件夹中,因此,如果清除var/generation
内容,则Magento将重新生成拦截器。
rm -rf var/generation var/di
清除
var/generation and var/di
可以解决此问题。