Magento: Fatal error: Call to a member function getModelInstance() on a non-object in app\Mage.php on line 432

后端 未结 5 772
感情败类
感情败类 2020-12-20 18:50

I want to call a PHP file using ajax where in that PHP i will place order by the ajax call. But it throws error while i am using app/Mage.php from that file

         


        
相关标签:
5条回答
  • 2020-12-20 19:23

    you need to initialize magento. the safest way to initialize it is by using initializer before your actual call to the model

    Mage::init();

    $customer = Mage::getModel('customer/customer');

    0 讨论(0)
  • 2020-12-20 19:35

    You should initialize the Magento Framework first:

    /* Store or website code */
    $mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : '';
    
    /* Run store or run website */
    $mageRunType = isset($_SERVER['MAGE_RUN_TYPE']) ? $_SERVER['MAGE_RUN_TYPE'] : 'store';
    
    Mage::init($mageRunCode, $mageRunType, array());
    
    0 讨论(0)
  • 2020-12-20 19:37

    I got the same error message. The solution was different. I forgot to give the permission on the magento folder to the Apache.

    chown -R apache:apache magento
    
    0 讨论(0)
  • 2020-12-20 19:39

    I personally had solved it by using

    $customer = new Mage_Customer_Model_Customer();
    

    instead of using

    $customer = Mage::getModel('customer/customer');
    

    0 讨论(0)
  • 2020-12-20 19:48

    Your proposed solution is not optimal. You have not initialized Magento so module XML is not loaded yet and the factory pattern does not work.

    Simply use either:

    Mage::init(); // 1.5+ 
    

    or

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

    before using getModel.

    0 讨论(0)
提交回复
热议问题