致命错误:对/app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php中的非对象调用成员函数getId()

致命错误:对/app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php中的非对象调用成员函数getId(),php,magento,magento-1.8,Php,Magento,Magento 1.8,将Magento迁移到新服务器后,在尝试保存产品时,我在可怕的白色屏幕上出现以下错误: 致命错误:在第587行的…app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php中对非对象调用成员函数getId() if (Mage::app()->isSingleStoreMode()) { $product->setWebsiteIds(array(Mage::app()->getS

将Magento迁移到新服务器后,在尝试保存产品时,我在可怕的白色屏幕上出现以下错误:

致命错误:在第587行的…app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php中对非对象调用成员函数getId()

if (Mage::app()->isSingleStoreMode()) {
        $product->setWebsiteIds(array(Mage::app()->getStore(true)->getWebsite()->getId()));
    }
这是第587行的代码

if (Mage::app()->isSingleStoreMode()) {
        $product->setWebsiteIds(array(Mage::app()->getStore(true)->getWebsite()->getId()));
    }
同一节中的方法,即第556-588行:

/**
 * Initialize product before saving
 */
protected function _initProductSave()
{
    $product     = $this->_initProduct();
    $productData = $this->getRequest()->getPost('product');
    if ($productData) {
        $this->_filterStockData($productData['stock_data']);
    }

    /**
     * Websites
     */
    if (!isset($productData['website_ids'])) {
        $productData['website_ids'] = array();
    }

    $wasLockedMedia = false;
    if ($product->isLockedAttribute('media')) {
        $product->unlockAttribute('media');
        $wasLockedMedia = true;
    }

    $product->addData($productData);

    if ($wasLockedMedia) {
        $product->lockAttribute('media');
    }

    if (Mage::app()->isSingleStoreMode()) {
        $product->setWebsiteIds(array(Mage::app()->getStore(true)->getWebsite()->getId()));
    }

我意识到这很旧,但我在1.9.0.1商店遇到了类似的问题。当我打开缓存时,它工作了!在缓存关闭并清除的情况下,它没有。不知道为什么


希望这会有所帮助。

我意识到这很旧,但我在1.9.0.1商店遇到了类似的问题。当我打开缓存时,它工作了!在缓存关闭并清除的情况下,它没有。不知道为什么


希望这能有所帮助。

错误消息中是否包含堆栈跟踪?@SteveRobbins No这是我得到的全部。错误消息中是否包含堆栈跟踪?@SteveRobbins No这是我得到的全部。