在Magento创建新订单部分添加新表格

5
我正在尝试找出如何在管理区域添加一个新的部分,以创建一个新订单。这是我对自定义扩展所做的更新。这个扩展功能很好,但我似乎无法弄清楚为什么不能在创建新订单下添加新部分。
如果您帮助我添加一个块到这个部分,那么您将获得50点奖励。
下面是我的代码: Module/Name/Block/Adminhtml/Sales/Order/Create/test.phtml
<?php

class Module_Name_Block_Adminhtml_Sales_Order_Create_Test extends Mage_Adminhtml_Block_Sales_Order_Create_Abstract
{
    public function __construct()
    {
        $this->_controller = 'adminhtml_sales_order_create_test';
        $this->_blockGroup = 'module_name';
        $this->_headerText = Mage::helper('module_name')->__('Update');
        parent::__construct();
        $this->_removeButton('add');

    }  

    public function getHeaderText()
    {
        return Mage::helper('module_name')->__('Edit');
    }
}

Module/Name/controllers/Adminhtml/Sales/Order/CreateController.php

<?php

    class Module_Name_Adminhtml_Sales_Order_CreateController extends Mage_Adminhtml_Controller_Action
    {
        public function indexAction()
        {
            $this->loadLayout();
            $this->renderLayout();
            return $this;

           // If I echo something here I do see what I echo
        }
    }

Module/Name/etc/config.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Module_Name>
            <version>0.1.1</version>
        </Module_Name>
    </modules>
    <phpunit>
        <suite>
            <modules>
                <Module_Name/>
            </modules>
        </suite>
    </phpunit>
    <global>   
        <blocks>
            <module_name>
                <class>Module_Name_Block</class>
            </module_name>
        </blocks>
        <helpers>
            <module_name>
                <class>Module_Name_Helper</class>
            </module_name>
        </helpers>
    </global>
    <frontend>
        <routers>
            <module_name>
                <use>standard</use>
                <args>
                    <module>Module_Name</module>
                    <frontName>modulename</frontName>
                </args>
            </module_name>
        </routers>
    </frontend>
    <admin>
        <routers>
            <adminhtml>
                <args>
                    <modules>
                        <module_name before="Mage_Adminhtml">Module_Name_Adminhtml</module_name>
                    </modules>
                </args>
            </adminhtml>
        </routers>
    </admin>
    <adminhtml>
        <layout>
            <updates>
                <module_name module="module_name">
                    <file>test.xml</file>
                </module_name>
            </updates>
        </layout>
    </adminhtml>
</config>

app/design/adminhtml/default/default/layout/test.xml

    <?xml version="1.0"?>
    <layout version="0.1.0">

        <adminhtml_sales_order_create_index>
            <reference name="root">
                <block type="module_name/adminhtml_sales_order_create_test" name="test" template="module/name/sales/order/create/test/test.phtml" />
            </reference>
        </adminhtml_sales_order_create_index>

            <adminhtml_sales_order_create_load_block_data>
                <reference name="content">
                   <block type="module_name/adminhtml_sales_order_create_test" name="test" template="module/name/sales/order/create/test/test.phtml" />  
                </reference>
        </adminhtml_sales_order_create_load_block_data>

    </layout>

app/design/adminhtml/default/default/template/module/name/test/test.phtml

<?php

    echo "This is working";

?>

Chris,据我所知,你需要在销售-> 创建新订单页面上添加一个新的块,并且在该块中想要显示上面的模板内容,即“这是有效的”。请确认? - Sunil Verma
请问您正在使用哪个版本的Magento?谢谢。 - Ahmed C
1个回答

4

尝试将此代码从您的布局文件中替换:

<adminhtml_sales_order_create_index>
    <reference name="root">
         <block type="module_name/adminhtml_sales_order_create_test" name="test" template="module/name/sales/order/create/test/test.phtml" />
     </reference>
</adminhtml_sales_order_create_index>

使用这个:

<adminhtml_sales_order_create_index>
    <reference name="order_item_extra_info">
         <block type="module_name/adminhtml_sales_order_create_test" name="test" template="module/name/sales/order/create/test/test.phtml" />
     </reference>
</adminhtml_sales_order_create_index>

你好,最终做了类似这样的事情,并引入了data.phtml文件。我会接受你的答案,因为我相信这也可能有效。 - Chris78

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接