2013-11-03 7 views
5

新しい注文を作成するために管理エリアに新しいセクションを追加する方法を理解しようとしています。これは私のカスタム拡張に行っている更新です。拡張機能は素晴らしいですが、新しいオーダーを作成する際に新しいセクションを追加できない理由がわかりません。Magentoで新しいテーブルを追加する新しい注文セクションを作成する

このセクションにブロックを追加すると、50ポイントの賞金を受け取ることができます。

これは私が持っているものです。

モジュール/名前/ブロック/ Adminhtml /販売/受注//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'); 
    } 
} 

モジュール/名前/コントローラ/ Adminhtml /販売/受注/ 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 
     } 
    } 

モジュール/名前は/ 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> 

アプリ/設計/ adminhtml /デフォルト/デフォルト/レイアウト/の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> 

アプリ/設計/ adminhtml /デフォルト/デフォルト/テンプレート/モジュール/名前/テスト/ test.phtml

<?php 

    echo "This is working"; 

?> 
+0

クリスは、私の知る限り理解し、あなたは販売の新しいブロックを持っている必要があります。確認してください –

答えて

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> 
+0

こんにちは、これに似た何かをやり終え、data.phtmlファイルを持ってきてください。私はあなたの答えを受け入れるだろうと確信しています。 – Chris78