1

有谁知道如何Mage_Core_Model_App在 Magento 中扩展课程?

我已经像这样设置了我的 config.xml

<?xml version="1.0"?>
 <config>
  <global>
    <models>
        <core>
           <rewrite>
                <app>My_Module_Model_App</app>
            </rewrite>
        </core>
    </models>
  </global>
</config>

但 Magento 似乎没有加载它。

如果我将App.php文件复制到app/code/local/Mage/Core/Model/App目录中会好吗?

我不确定这种方式是否好,因为如果我是对的,我必须将整个代码复制到其中,而我只是做了一些小的修改。

有人有建议吗?

4

2 回答 2

5

您覆盖核心模型的 xml 代码看起来不错,并且通常可以工作。类 Mage_Core_Model_App 的问题在于它是在文件new Mage_Core_Model_App()中的方法中直接使用实例化的public static function app()app/Mage.php

以 xml 方式重写核心模型只会影响使用 Mage::getModel('core/app') 等加载的类。

因此,不幸的是,在这种情况下,您唯一的选择实际上是将文件复制到您的应用程序/代码/本地文件结构并复制并粘贴整个代码,然后对其进行编辑。

不过,通常情况下,您的 xml 重写结构会完美运行,并且比复制整个类更可取。这个特殊的核心模型有些特别。

于 2013-01-06T02:40:56.127 回答
0

一个快速的谷歌搜索想出了http://www.magentocommerce.com/wiki/doc/webservices-api/custom-api。我在我的本地 XAMPP 安装上试过这个。只需将要编辑的文件复制到 app/code/local 文件夹并保持相同的目录结构即可。我通过从 /app/code/core/Mage/Cms/Block/Page.php 复制文件来编辑 /app/code/local/Mage/Cms/Block/Page.php 并按预期工作。希望这可以帮助!

于 2013-01-06T02:08:57.563 回答