加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

覆盖/扩展Magento抽象类?

发布时间:2020-12-13 18:09:20 所属栏目:PHP教程 来源:网络整理
导读:我只需要在Mage_Core_Model_Abstract类中添加一个方法. 为此,在我的config.php中我有 models mymodule classMynamespace_Mymodule_Model/class /mymodule core rewrite mage_core_model_abstractMynamespace_Mymodule_Model_Abstract/mage_core_model_abstra
我只需要在Mage_Core_Model_Abstract类中添加一个方法.

为此,在我的config.php中我有

<models>
     <mymodule>
         <class>Mynamespace_Mymodule_Model</class>
     </mymodule>
     <core>
         <rewrite>
             <mage_core_model_abstract>Mynamespace_Mymodule_Model_Abstract</mage_core_model_abstract>
         </rewrite>
     </core>
</models>

它真的不起作用..

我知道有一种方法可以通过将包括类文件在内的所有文件夹结构复制到我的模块中来“覆盖”,但我想知道是否有办法让它在我的模块中更加花哨 – 类似于上面的内容..

您只能从config.xml重写直接实例化的类.

通过工厂创建对象时使用config.xml中的各种值(例如Mage :: getModel($class),Mage :: getSingleton($class),Mage :: helper($class)等). $class参数的值用于将目录/产品转换为Mage_Catalog_Model_Product.

这意味着不可能重写(在Magento意义上)用作超类的类,包括抽象类(根据定义).

如果要重新定义用作超类的任何类,则需要将文件放在包含路径的正确位置.在这种情况下,您需要在app / code / local / Mage / Core / Model / Abstract.php中创建一个文件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读