2013-03-04 41 views
1


嗨, 我正在寫一個Magento模塊。爲此,我想在模塊的處理程序中調用一個核心塊。我不想修改或擴展核心塊。我只是想在我的佈局處理程序中調用它。有什麼建議麼?Magento:呼叫我的模塊內的核心塊

我想插入位於

adminhtml/sales/order/view/history.php 

以下處理程序塊是包含上述Histrory.php阻止

<adminhtml_sales_order_addcomment> 
     <block type="adminhtml/sales_order_view_history" name="order_history" template="sales/order/view/history.phtml" output="toHtml"/> 
    </adminhtml_sales_order_addcomment> 

的sales.xml這是我的layout.xml

 <orderadmin_adminhtml_orderadmin_search> 
     <update handle="orderadmin_orderadmin_search" /> 
     <reference name="content"> 
    <!-- I want to insert the following block --> 
     <block type="adminhtml/sales_order_view_history" name="order_history" template="sales/order/view/history.phtml" output="toHtml"/> 
</reference> 
</orderadmin_adminhtml_orderadmin_search> 

但它會導致以下錯誤。

致命錯誤:調用一個成員函數的getId()在\應用\代碼\芯的非對象上\法師\ Adminhtml \塊\ SALES \訂單\視圖\ History.php上線79

+1

你打電話是什麼意思?你可以通過'' – 2013-03-04 10:21:51

+0

是的。我想在layout中插入我的處理程序中的核心塊 – Sukeshini 2013-03-04 11:11:26

+0

是的,就這樣做。如果你都做到了,顯示代碼,如果它不能正常工作 – 2013-03-04 11:13:12

回答

1

的問題是沒有用XML佈局做的,那就是INFAC t正確並且將按原樣運行。

該問題是因爲該塊期望命令在註冊表中,以使其能夠獲取歷史記錄。

您應該在呈現歷史記錄塊之前在控制器或模塊塊內的註冊表中設置訂單(您希望用於查看歷史記錄的訂單)。

+0

非常感謝。將訂單ID保存到寄存器後,錯誤被修復。 – Sukeshini 2013-03-04 12:25:47

+0

嗨,我在我的處理程序中添加了塊。但是,當我添加評論並提交它不顯示在評論列表中。請幫忙? – Sukeshini 2013-03-04 17:43:17

1

你要做這樣的代碼:

<!-- this is my handler --> 
<orderadmin_adminhtml_orderadmin_search> 
     <update handle="orderadmin_orderadmin_search" /> 
     <reference name="content"> 
      <block type="orderadmin/adminhtml_search" name="search_order" /> 
      <!-- I want to call the core block here --> 

Pick up from core layouts the block you wanted and paste here as it is, it will get rendered

 </reference> 
    </orderadmin_adminhtml_orderadmin_search> 
+0

謝謝你的解決方案。我已經嘗試過了。但它沒有奏效。請提出任何建議? – Sukeshini 2013-03-04 11:15:58

+0

您好,我想在adminhtml/default/default/layout/sales.xml中插入以下代碼塊: Sukeshini 2013-03-04 11:18:24

+0

在你的控制器的動作中你寫了$ this-> loadLayout() - > renderLaout(); ...? – ANKIT 2013-03-04 11:35:55