致命错误:在 ../app/code/core/Mage/Adminhtml/Block/System/Config/Form.php 第 463 行的非对象上调用成员函数 toOptionArray()
-
11-12-2019 - |
题
安装“sphinx search Ultimate”后,当我进入配置页面并选择“sphinx search”面板时,出现以下错误:
Fatal error: Call to a member function toOptionArray() on a non-object in ../app/code/core/Mage/Adminhtml/Block/System/Config/Form.php on line 464
我已经尝试了网站上提到的一些技巧,包括确保编译已关闭。但没有运气。
有人可以帮忙吗?您在安装新扩展时遇到过这个问题吗?关于如何排除故障的想法?
谢谢。
解决方案
确保已安装所有文件,Web服务器有足够的权限来实际加载它们。如果安装需要几个步骤,这很容易发生。ToOptionArray是来自填充下拉选项的对象的方法。作为非对象的指示灯意味着对象值为null,它通常在声明文件丢失或不可读取时发生。
其他提示
复制 app\code\core\Mage\Adminhtml\Block\System\Config\Form.php
粘贴/扩展至/创建 app\code\local\Mage\Adminhtml\Block\System\Config\Form.php
在第 463 行找到以下内容
$optionArray = $sourceModel->toOptionArray($fieldType == 'multiselect');
并将其替换为:
if(is_object($sourceModel)){
$optionArray = $sourceModel->toOptionArray($fieldType == 'multiselect');
} else {
Mage::log($e->source_model);
}