我正在尝试使用其他本地扩展名覆盖本地codepool扩展控制器,但它不起作用,不知道原因,firstextension
是我要覆盖的扩展名secondextension
这是我的代码
config.xml
<admin>
<routers>
<firstextension>
<args>
<modules>
<Namespace_Secondextension before="Namespace_Firstextension">Namespace_Secondextension_Adminhtml</Namespace_Secondextension>
</modules>
</args>
</firstextension>
</routers>
</admin>
和controller
<?php
require_once 'local/Namespace/Firstextension/controllers/Adminhtml/CustomController.php';
class Namespace_Secondextension_Adminhtml_CustomController extends Namespace_Firstextension_Adminhtml_CustomController
{
public function saveAction()
{
}
}
答案 0 :(得分:2)
通过改变解决
require_once 'local/Namespace/Firstextension/controllers/Adminhtml/CustomController.php';
到
getModuleDir('controllers','Namespace_Firstextension').DS.'Adminhtml'.DS.'CustomController.php';
还
<Namespace_Secondextension before="Namespace_Firstextension">Namespace_Secondextension_Adminhtml</Namespace_Secondextension>
到
<Namespace_Secondextension before="Namespace_Firstextension">Namespace_Secondextension</Namespace_Secondextension>
答案 1 :(得分:1)
也许Namespace_secondextension
中的错字应该是Namespace_Secondextension
,区分大小写在Magento中很重要,这是你的问题吗?