如何扩展已经覆盖的类自定义模块Magento 1

时间:2018-02-09 20:52:35

标签: php magento

我试图在发票屏幕中添加新行,因此我为Magento 1.8创建了一个新的自定义模块。

添加于:

class Myname_Module_Block_Adminhtml_Sales_Invoice_Grid extends Mage_Adminhtml_Block_Sales_Invoice_Grid

所以我将文件放入Grid.php文件夹中,我添加了以下内容:

$this->addColumn('my_custom', array(
            'header'    => Mage::helper('customer')->__('My Custom'),
            'index'     => 'my_custom',
            'type'      => 'currency',
            'align'     => 'right',
            'currency'  => 'order_currency_code',
        ));

问题是,有另一个模块使用这个类并扩展相同的Mage Grid,所以在我的最后我得到:致命错误:Class' Mage_Adminhtml_Block_Sales_Invoice_Grid'

中找不到

在我的配置上:

<adminhtml>
                <rewrite>
                    <sales_invoice_grid>Myname_Module_Block_Adminhtml_Sales_Invoice_Grid</sales_invoice_grid>
                </rewrite>
            </adminhtml>

任何想法如何在我的模块上扩展这个类而不会丢失另一个?我不能禁用另一个。

1 个答案:

答案 0 :(得分:0)

我有这个工作,你需要添加这个

在etc / modules / Myname_Module.xml

<config>
    <modules>
        <Myname_Module>
            <active>true</active>
            <codePool>local</codePool>
            <depends>
                <Myother_Module/>
            </depends>
        </Myname_Module>
    </modules>
</config>

然后该类需要扩展到另一个模块主类:)