Magento为保存丢失的store_id抛出异常

时间:2011-01-20 16:03:43

标签: magento

我遇到的问题是,在信用卡交易期间,对交易的保存操作会导致抛出错误,抱怨未在保存的对象上设置store_id。有问题的代码在Mage_Eav_Model_Entity_Abstract中:_collectSaveData($ newObject)

 if (array_key_exists($k, $origData)) {
            if ($this->_isAttributeValueEmpty($attribute, $v)) {
                $delete[$attribute->getBackend()->getTable()][] = array(
                    'attribute_id'  => $attrId,
                    'value_id'      => $attribute->getBackend()->getValueId()
                );
            } else if ($v !== $origData[$k]) {
                $update[$attrId] = array(
                    'value_id' => $attribute->getBackend()->getValueId(),
                    'value'    => $v,
                );
            } else if ($v == $origData[$k] && $origData['store_id'] != $this->getDefaultStoreId()) {  <--- the exception origin
                $insert[$attrId] = $v;
            }
        } else if (!$this->_isAttributeValueEmpty($attribute, $v)) {
            $insert[$attrId] = $v;
        }

存储的对象是Mage_Customer_Model_Address类型。问题很明显;地址模型没有定义store_id。我的问题是a)为什么不?,或者b)它应该被定义吗?或者c)这是一个错误吗?

我正在使用Magento ver。 1.5.x的-devel的-90295

0 个答案:

没有答案