2016-03-07 85 views
0

我想覆盖管理销售/订单/发票控制器。我尝试了一切,但它不覆盖。下面是代码:如何覆盖管理员发票控制器

配置文件:

<?xml version="1.0" encoding="utf-8"?> 
<config> 
    <admin> 
    <routers> 
     <adminhtml> 
      <use>admin</use>  
      <args> 
       <modules><TW_Printinvoice before="Mage_Adminhtml">TW_Printinvoice_Adminhtml</TW_Printinvoice> 
       </modules> 
      </args> 
     </adminhtml> 
    </routers> 
</admin> 

控制器的文件与路径:app/code/local/TW/Printinvoice/controllers/Adminhtml/Sales/Order/

require_once 'Mage/Adminhtml/controllers/Sales/Order/InvoiceController.php'; 
class TW_Printinvoice_Adminhtml_Sales_Order_PrintController extends Mage_Adminhtml_Sales_Order_InvoiceController 
{ 
    public function printAction() 
    { 
     die('Testing'); 
    } 
} 

回答

3

尝试这个代码在控制器文件中。 InvoiceController.php

<?php 
require_once 'Mage/Adminhtml/controllers/Sales/Order/InvoiceController.php'; 
class TW_Printinvoice_Adminhtml_Sales_Order_InvoiceController extends Mage_Adminhtml_Sales_Order_InvoiceController 
{ 
    public function printAction() 
    { 
     die('Testing'); 
    } 
} 
?> 

希望这可以帮助你!

+0

感谢这为我工作..但不知道为什么文件名称使差异.. – ssnegi

0

试试这个配置:


<admin> 
    <routers> 
     <adminhtml> 
      <args> 
       <modules> 
        <TW_Printinvoice before="Mage_Adminhtml">TW_Printinvoice_Adminhtml_Sales_Order</TW_Printinvoice > 
       </modules> 
      </args> 
     </adminhtml> 
    </routers> 
</admin>