我们的网站以Magento 1为基础。
我们安装了从magestore团队购买的Mega菜单扩展。
但是,当我们点击后端管理设置中的目录/管理类别时,我们收到了此错误。
如何解决这个问题?
**There has been an error processing your request**
Source model "megamenu/menutype" not found for attribute "menutype"
/app/code/core/Mage/Eav/Model/Entity/Attribute/Abstract.php(386): Mage::exception('Mage_Eav', 'Source model "m...')
/app/code/core/Mage/Adminhtml/Block/Widget/Form.php(201): Mage_Eav_Model_Entity_Attribute_Abstract->getSource()
app/code/core/Mage/Adminhtml/Block/Catalog/Category/Tab/Attributes.php(113): Mage_Adminhtml_Block_Widget_Form->_setFieldset(Array, Object(Varien_Data_Form_Element_Fieldset))
...
答案 0 :(得分:1)
此问题已成功解决。 Menutype与旧的冲突。 我们在我们的网站上使用了Peerforest_Megamenu扩展。虽然我们禁用了旧的超级菜单扩展,但此属性仍保留在我们的数据库中。 因此,当我们安装名为Magestore mega菜单扩展名的新扩展程序时,发生了该问题。
此外。 Peerforest_Megamenu在类别表上创建了一些新的属性,如megamenu / menutype,这些属性需要一个模型源来显示选项。
当我们禁用Peerforest_Megamenu时,他们无法再找到他们的模型源。 我刚刚为这些属性创建了一些新的模型源文件。 这是新的菜单类型代码块。
<?php
class Magestore_Megamenu_Model_Menutype extends
Mage_Eav_Model_Entity_Attribute_Source_Abstract
{
protected $_options = array();
public function getAllOptions()
{
$this->_options[] = array('value' => 'megamenu-horizontal','label' => 'Mega Menu');
$this->_options[] = array('value' => 'megamenu-vertical','label' => 'Vertical');
return $this->_options;
}
}
希望我的回答能帮助别人。 谢谢您的考虑。 问候。