我无法覆盖adminhtml模型,任何人都可以帮我解决我做错的地方......
模块XML
<?xml version="1.0"?>
<config>
<modules>
<Cc_Adminhtml>
<active>true</active>
<codePool>local</codePool>
</Cc_Adminhtml>
</modules>
</config>
配置XML
<?xml version="1.0"?>
<config>
<modules>
<Cc_Adminhtml>
<version>0.1.0</version>
</Cc_Adminhtml>
</modules>
<global>
<models>
<adminhtml>
<rewrite>
<sales_order_create>Cc_Adminhtml_Model_Create</sales_order_create>
</rewrite>
</adminhtml>
</models>
</global>
</config>
PHP文件:
class Cc_Adminhtml_Model_Create extends Mage_Adminhtml_Model_Sales_Order_Create { /** * Create new order * * @return Mage_Sales_Model_Order */ public function createOrder() { // want to overwrite this method/function } }
答案 0 :(得分:0)
如果您的文件命名中没有拼写错误而不是缓存问题,则需要检查您是否具有覆盖相同模型的扩展名
答案 1 :(得分:0)
我已经用1.7 ce版检查了你的代码。它按预期工作。只需确保您具有以下文件夹结构。
-app/code/local/Cc/Adminhtml/etc/config.xml
-app/code/local/Cc/Adminhtml/Model/Create.php
-app/etc/modules/Cc_Adminhtml.xml
我尝试将exit放在createOrder()方法中,并打印一些消息,当我尝试从adminpanel创建新订单时单击提交订单按钮显示消息时。
我可以确认上面的代码工作正常。
答案 2 :(得分:0)
你的代码太棒了。重写步骤没有错误。
如果你在PHP文件中显示所有文件内容,那么不要忘记添加
<?php
在最开始的PHP文件上。
如果已添加,则尝试刷新所有 Magento缓存。
答案 3 :(得分:-2)
重写标签应如下: Cc_Adminhtml_Model_Sales_Order_Create