Magento在管理区域内的“管理客户”页面上发布

时间:2012-08-10 13:57:37

标签: magento-1.7

我在使用Magento的商店工作,但我遇到了一个大问题,但我不知道出了什么问题。当我点击管理区域中的“管理客户”时,它会显示以下错误:

Fatal error: Call to a member function getBackend() on a non-object in /home/opositivo/developositivo/public_html/pinklemon/app/code/core/Mage/Eav/Model/Entity/Collection/Abstract.php on line 516

该行周围的代码是:

foreach ($attribute as $attributeItem) {
        if (isset($this->_staticFields[$attributeItem])) {
                $attrField = sprintf('e.%s', $attributeItem);
        } else {
                $attributeInstance = $this->getAttribute($attributeItem);

                if ($attributeInstance->getBackend()->isStatic()) {
                        $attrField = 'e.' . $attributeItem;
                } else {
                        $this->_addAttributeJoin($attributeItem, 'left');
                        $attrField = $this->_getAttributeFieldName($attributeItem);
                }
        }

        $fullExpression = str_replace('{{attribute}}', $attrField, $fullExpression);
        $fullExpression = str_replace('{{' . $attributeItem . '}}', $attrField, $fullExpression);
}

第516行是:

if ($attributeInstance->getBackend()->isStatic()) {

这个“getBackend()”函数似乎是个问题。在测试期间,我看到以下报告错误:

a:5:{i:0;s:34:"Invalid attribute name: school";i:1;s:5727:"#0 /home/opositivo/developositivo/public_html/pinklemon/app/code/core/Mage/Eav/Model/Entity/Collection/Abstract.php(1294): Mage::exception('Mage_Eav', 'Inv??lido nome ...')

我在magento db中搜索过但是我没有找到“学校”搜索的任何结果。

有谁知道这个问题,可以帮助我吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

我解决了这个问题。

在516行之前添加//changed a bit... $evens->write(); $evens->publish("Stage", "Live");

您的代码如下所示:

if (!$attrInstance) return true;