我想做上面的事情。我过去覆盖了许多文件......块,模型,助手......但是这个让我望而却步。
谁能看到我在这里做错了什么:(我编辑了这段代码......现在包括一些建议......)
这是我的文件夹结构(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>
我已将我的控制器文件放在 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...
}
当我访问:/checkout/cart/add 我被定向到法师控制器......不是我的本地人。(我每个都有 var_dump stmts ..所以我可以看到哪个运行了)。
当我访问 /checkout/cart/test - 我得到一个 404 当我访问 /cart/add 或 cart/test - 我得到一个 404 当我访问 idgeneral/cart/test 或 idgeneral/cart/add - 我得到一个 404