Question

Pour un de mon module, je suis en train de réécrire la classe Mage_Sales_Model_Quote_Address_Total_Subtotal. Je l'habitude de réécrire les modèles, aucun problème avec cela. Je comprends que les classes abstraites ne peuvent pas être réécrites. Mais celui-ci, je suis coincé ...

Mon but est de réécrire la fonction protégée _initItem ($ adresse, $ article), j'ai échoué, et tryed de réécrire toutes les fonctions (avec parent :: remplacement par classe de grand-parent). Pas plus de chance pour moi.

Voici ma config:

<!-- in app/code/local/Mynamespace/Mymodule/etc/config.xml -->
<?xml version="1.0"?>
<config>
<global>
    <models>
        <sales_quote>
            <rewrite>
                <address_total_subtotal>Mynamespace_Mymodule_Model_Sales_Quote_Address_Total_Subtotal</address_total_subtotal>
            </rewrite>
        </sales_quote>
    </models>
</global>
</config> 

Et ma classe:

# in app/code/local/Mynamespace/Mymodule/Model/Sales/Quote/Address/Total/Subtotal.php
class Mynamespace_Mymodule_Model_Sales_Quote_Address_Total_Subtotal extends Mage_Sales_Model_Quote_Address_Total_Subtotal
{
protected function _initItem($address, $item)
{
    Mage::log("rewrite");
}
}

peut me aider quelqu'un avec ça? Semble être le même problème que d'une classe abstraite jusqu'à présent.

Était-ce utile?

La solution

<sales_quote>
        <rewrite>
            <address_total_subtotal>Mynamespace_Mymodule_Model_Sales_Quote_Address_Total_Subtotal</address_total_subtotal>
        </rewrite>
    </sales_quote>

doit être

<sales>
        <rewrite>
            <quote_address_total_subtotal>Mynamespace_Mymodule_Model_Sales_Quote_Address_Total_Subtotal</quote_address_total_subtotal>
        </rewrite>
    </sales>

Autres conseils

Voici quelques notes données sur l'image, essayez de comprendre comment créer des noms de modèle et récrire dans config.xml: Modèle rewrite

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top