2013-11-27 53 views
1

我正在Magento中创建自定义模块。请告诉我如何在Magento admin中添加多个网格?或者在网格之后或之前添加一些数据。Magento中的多个网格管理员

在此先感谢

回答

1

您可以添加几个网格你将需要创建_prepareCollection方法某种化合物收集page.Otherwise。在这种情况下,你最好创建一个新的模型来处理数据。 下面是你应该去在一个模块中有多个网格的结构。

- Namespace 
    - Module 
      - Block 
      - Adminhtml 
       - Submodule1 
         - Grid.php 
       - Submodule2 
         - Grid.php 
       - Submodule3 
         - Grid.php 

3

是的,你可以在下面的步骤

比方说你有模块调用Mycompany_Mail。而你要创建两个网格称为 SentTray & RecvdTray

1)创建一个文件Grid.php创建一个类Mycompany_Mail_Block_Adminhtml_SentTray_Grid MyCompany的/邮件/座/ Adminhtml/SentTray/ 的文件夹下类,并编写代码以制备在其内部

2)列创建文件Grid.php的文件夹下创建一个类Mycompany_Mail_Block_Adminhtml_RecvdTray_Grid类MyCompany的/邮件/块/ Adminhtml/RecvdTray/ 和写代码,以制备在其内部列

注1:不产生任何其他PHP文件来初始化网格

注2:不包含方块标记你的config.xml

3)现在,让我们创建一个名为MailController控制器文件.PHP创建 类Mycompany_Mail_Adminhtml_MailController延伸Mage_Adminhtml_Controller_Actionunder MyCompany的/邮件/控制器/ Adminhtml/

4)用于创建该文件夹下两个操作之一,用于访问发送托盘和另一个用于访问recvd托盘 喜欢下面所示

public function sendTrayAction() 
    { 
     $this->loadLayout(); 
     $this->_addContent($this->getLayout()->createBlock('Mycompany_Mail_Block_Adminhtml_SentTray_Grid')); 
     $this->renderLayout(); 
    } 

public function recvdTrayAction() 
    { 
     $this->loadLayout(); 
     $this->_addContent($this->getLayout()->createBlock('Mycompany_Mail_Block_Adminhtml_RecvdTray_Grid')); 
     $this->renderLayout(); 
    } 

5)现在,链路与菜单项以上两个动作。就是这样。