Domanda

Sto sviluppando un modulo personalizzato in cui verrà creato un file XML dopo il completamento ordine per ogni ordine.

Ho chiamato una funzione exportOrder su verificano di un evento "sales_order_place_after". Di seguito è riportato il codice della mia funzione

public function exportOrder($observer) {
    $order = $observer->getEvent()->getOrder();
    Mage::getModel('meteorify_observerexample/export')->exportOrder($order);
    return true;
}

file Ora In export.php ho scritto la logica della creazione di un file XML file.Export.php viene inserito nella cartella Meteorify / Observerexample / modello / cartella.

Qui ho chiamato la funzione exportOrder dal file export.php utilizzando Mage::getModel('meteorify_observerexample/export')->exportOrder($order); ma sto ottenendo l'errore

"Fatal error: chiamata a una funzione membro exportOrder () su un non-oggetto nel /home/user_www/aliasgar/magentotesting/app/code/local/Meteorify/Observerexample/Model/Observer.php sulla linea 6"

Chiunque può aiutare me su questo?

È stato utile?

Soluzione

Il problema è nel file config.xml nella dichiarazione del modello di alias.
Nel tuo caso è il seguente:

<models>
    <meteorify_observerexample>
        <class>Observerexample_Model</class>
    </meteorify_observerexample>
</models> 

Ma dovrebbe essere

<models>
    <meteorify_observerexample>
        <class>Meteorify_Observerexample_Model</class>
    </meteorify_observerexample>
</models>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top