我想做以上。 我过去覆盖了很多文件...块,模型,帮手....但这个逃避了我。Magento覆盖控制器
有人能看到什么即时做错了什么: (IVE编辑这段代码...包括一些recomendations现在...)
继承人我的文件夹结构(2个控制器的位置作为测试):
/Idigital/Idgeneral/etc/config.xml
/Idigital/Idgeneral/controllers/Checkout/CartController.php
/Idigital/Idgeneral/controllers/CartController.php
赫雷什我的config.xml:
<?xml version="1.0"?>
<config>
<modules>
<idigital_idgeneral>
<version>0.1.0</version>
</idigital_idgeneral>
</modules>
<global>
<blocks>
<idgeneral><class>Idigital_Idgeneral_Block</class></idgeneral>
</blocks>
</global>
<frontend>
<routers>
<checkout>
<use>standard</use>
<args>
<modules>
<Idigital_Idgeneral before="Mage_Checkout">Idigital_Idgeneral_Checkout</Idigital_Idgeneral>
</modules>
</args>
</checkout>
</routers>
<layout>
<updates>
<idgeneral>
<file>idigital.xml</file>
</idgeneral>
</updates>
</layout>
</frontend>
</config>
IHAVE放置我的控制器文件在2个地点进行测试。 而继承人我的第一个控制器文件的顶部:
require_once 'Mage/Checkout/controllers/CartController.php';
class Idigital_Idgeneral_Checkout_CartController extends Mage_Checkout_CartController
{
public function testAction()
{
var_dump('inside checkout/cart/test');exit;
}
/**
* Add product to shopping cart action
*/
public function addAction()
{
blah...
}
答我的第二个控制器:
require_once 'Mage/Checkout/controllers/CartController.php';
class Idigital_Idgeneral_CartController extends Mage_Checkout_CartController
{
public function testAction()
{
var_dump('inside cart/test');exit;
}
/**
* Add product to shopping cart action
*/
public function addAction()
{
blah...
}
当我访问:/结帐/车/加 林定向到法师控制器...不是我的本地人。 (我在每个var_dump stmts ..我可以看到哪些是跑了)。
当我访问/结帐/车/测试 - 我得到一个404 当我访问/车/添加或购物车/测试 - 我得到一个404 当我访问idgeneral /车/测试或idgeneral /车/加 - 我得到一个404
我刚刚测试了您的代码后修订#3代码对裸体CE 1.6.2.0。请求'checkout/cart/test'适用于我,并显示预期结果(checkout/cart/test“'”内的'string(25)')。你的模块激活码('app/etc/modules/whatever.xml')是怎么看的? – 2012-07-06 09:06:26
尝试刷新缓存 – 2012-12-12 08:55:27