致命错误:在第463行的/Applications/XAMPP/xamppfiles/htdocs/magento/app/Mage.php中的非对象上调用成员函数getModelInstance()

use*_*443 9 php magento fatal-error

我安装magento 1.9.0.0并在运行localhost/magento时复制到我的xampp htdocts,这个错误显示,我已经完成了解决方案,但它没有用.

Fatal error: Call to a member function getModelInstance() on a non-object in    
 /Applications/XAMPP/xamppfiles/htdocs/magento/app/Mage.php on line 463
Run Code Online (Sandbox Code Playgroud)

这是代码脚本:

public static function getModel($modelClass = '', $arguments = array())
  {
    return self::getConfig()->getModelInstance($modelClass, $arguments);
  }
Run Code Online (Sandbox Code Playgroud)

Ben*_*Roe 24

该问题与某些写入权限有关.将写入权限设置为以下文件夹app/etc, var and media.

cd /xampp-folde/htdocs/magento
chmod -R 777 app/etc
chmod -R 777 var
chmod -R 777 media
Run Code Online (Sandbox Code Playgroud)

  • 我认为magento团队假设在目录不可写而不是引用的错误时抛出合理的异常. (2认同)

Imr*_*oor 12

如果您在尝试在脚本外部访问Magento时收到此错误

在使用权限之前,应首先考虑此处给出的解决方案.

Mage::init(); // 1.5+

Mage::app(); // (pretty much anything) below 1.5


Dan*_*ski 5

如果运行的是自定义脚本,则可能忘记设置当前商店。

例子:

Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
Mage::app()->setCurrentStore('my_store_id');
Run Code Online (Sandbox Code Playgroud)

如果您未设置存储,则调用Mage::getModel将导致上述错误。