将Magento迁移到新服务器后,在尝试保存产品时,在可怕的白色屏幕上出现此错误:
致命错误:在第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()));
}
答案 0 :(得分:4)
我意识到这是旧的,但我在1.9.0.1商店遇到了类似的问题。当我打开缓存它工作!关闭缓存并清除它没有。不知道为什么。
希望这有帮助。