пользовательская проверка отправить все после того, как наблюдатель не работает


Я пытаюсь написать observer. для справки я следую приведенному ниже руководству http://franklinstrube.com/blog/magento-event-observers /. но мой пользовательский наблюдатель не срабатывает. Я использую Magento версии 1.8.1.0 CE

Мой app/code/local/sv/ConnectInfusion/etc/config.xml файл выглядит следующим образом

<?xml version="1.0"?>
<config>
    <modules>
        <sv_ConnectInfusion>
            <version>1.0.0</version>
        </sv_ConnectInfusion>
    </modules>
    <global>
        <models>
            <ConnectInfusion>
                <class>sv_ConnectInfusion_Model</class>
            </ConnectInfusion>
        </models>
        <events>
                <checkout_submit_all_after>
                    <observers>
                        <awesome_example>
                            <class>sv_ConnectInfusion_Model_Observer</class>
                            <method>SyncWithInfusion</method>
                        </awesome_example>
                    </observers>
                </checkout_submit_all_after>
            </events>
        </global>
</config>

Мой файл наблюдателя

App/code/local/sv/ConnectInfusion/Model/Observer.php

class sv_ConnectInfusion_Model_Observer {
    /**
     * This function is triggered by a Magento observer declared
     * in etc/config.xml
     *
     * @param Varien_Event_Observer $observer
     */
    public function SyncWithInfusion($observer)
    {
        // Your magic code goes here...
        $event = $observer->getEvent()->getControllerAction()->getFullActionName();

        Mage::log('Event Fired: ' . $event);
        Mage::log('yeah i am in observer !! it works' , null , 'mylog.log');
        die();
    }
}

И мой app/etc/modules/sv_ConnectInfusion.xml файл выглядит следующим образом.

<?xml version="1.0"?>
<config>
    <modules>
        <sv_ConnectInfusion>
            <active>true</active>
            <codePool>local</codePool>
            <depends>
                <Mage_Checkout/>
                <Mage_Sales/>
                <Mage_CatalogInventory/>
            </depends>
        </sv_ConnectInfusion>
    </modules>
</config>

Что я делаю не так? Я попытался изменить xml-файлы, добавив <depends>, я также попытался переместить код в каталог сообщества, но все равно безуспешно.

Author: Marius, 2014-01-08

2 answers

Пожалуйста, измените пространство имен модулей sv на Sv и измените имя папки sv на Sv

Также измените название модели на все строчные буквы

<?xml version="1.0" ?>
<config>
    <modules>
        <Sv_ConnectInfusion>
            <version>1.0.0</version>
        </Sv_ConnectInfusion>
    </modules>
<global>
    <models>
                <connectinfusion>
                    <class>Sv_ConnectInfusion_Model</class>
                </connectinfusion>
            </models>


        <events>

                <checkout_submit_all_after>
                    <observers>
                        <awesome_example>
                            <class>Sv_ConnectInfusion_Model_Observer</class>
                            <method>SyncWithInfusion</method>
                        </awesome_example>
                    </observers>
                </checkout_submit_all_after>
            </events>
</global>
</config>
 2
Author: Amit Bera, 2014-01-09 17:48:53

checkout_submit_all_after реплицируется для Magento CE 1.8x, и вы можете использовать событие checkout_type_onepage_save_order_after в Magento CE 1.8x

 4
Author: SoftProdigy, 2014-01-09 13:21:08