php - fatal error : Call to a member function getId() on a non-object in/app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController. PHP

标签 php magento magento-1.8

将 Magento 迁移到新服务器后,当我尝试保存产品时,我在可怕的白屏上收到此错误:

fatal error :在第 587 行对 ...app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php 中的非对象调用成员函数 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 商店上遇到了类似的问题。当我打开缓存时,它起作用了!关闭缓存并清除后却没有。不知道为什么。

希望这有帮助。

关于php - fatal error : Call to a member function getId() on a non-object in/app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController. PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22949022/

相关文章:

php - 您将如何在不重做数据库的情况下使用错误的数据库优化这个遗留 Webapp

PHP Codeigniter : set Port Number for MySQL Configuration

php - Magento 自定义模块如何在 config.xml 中存储变量

configuration - Magento 配置 - 使用 frontend_model 时填充字段

javascript - Magento – 优惠券代码提交按钮不起作用

PHP 7.1 - 为什么没有关于 void 返回值的警告?

magento - 搜索词的多个同义词

php - Magento迁移错误500

magento - 如何关闭 Magento 系统属性 Short_description?

phpmyadmin #2054 无法登录mysql服务器