【问题标题】:Magento 1.9 Export functionality is not working in custom gridMagento 1.9 导出功能在自定义网格中不起作用
【发布时间】:2017-12-10 10:53:42
【问题描述】:

我创建了一个网格,其中列出了分配给订单的快递跟踪号。我在此网格中添加了一个导出 csv 按钮。当我单击导出按钮时,它会给出错误 致命错误:调用boolean 上的成员函数 getCsv()

控制器代码

<?php
    class Mage_OrderFulfillment_Adminhtml_TrackingnumbersController extends Mage_Adminhtml_Controller_Action {

        public function indexAction() {
            $this->loadLayout();     
            $this->renderLayout();  
        }

        public function exportCsvAction(){
            $fileName   = 'tracking_numbers.csv';
            $content    = $this->getLayout()->createBlock('orderfulfillment/adminhtml_trackingnumbers_grid');
            $this->_prepareDownloadResponse($fileName, $content->getCsv());
        }   
    }

网格代码

<?php

    class Mage_OrderFulfillment_Block_Adminhtml_Trackingnumbers_Grid extends Mage_Adminhtml_Block_Widget_Grid
    {
      public function __construct()
      {
          parent::__construct();
          $this->setId('mage_orderfulfillment_trackingnumbers_grid');
          $this->setDefaultSort('id');
          $this->setDefaultDir('DESC');
          $this->setSaveParametersInSession(true);
      }

      protected function _prepareCollection()
      {
          $collection = Mage::getModel('orderfulfillment/trackingnumbers')->getCollection();
          $this->setCollection($collection);
          return parent::_prepareCollection();
      }


      protected function _prepareColumns()
      {
            $this->addColumn('id', array(
                'header'    => Mage::helper('OrderFulfillment')->__('ID'),
                'align'     =>'right',
                'width'     => '50px',
                'index'     => 'id',
            ));

            $this->addColumn('tracking_number', array(
                'header'    => Mage::helper('OrderFulfillment')->__('Tracking Number'),
                'width'     => '150px',
                'index'     => 'tracking_number',
            ));

            $this->addExportType('*/*/exportCsv', Mage::helper('OrderFulfillment')->__('CSV'));
            return parent::_prepareColumns();
        }
    }

【问题讨论】:

    标签: php csv magento grid export


    【解决方案1】:
    //Update below function :
     public function exportCsvAction() {
            $fileName = 'tracking_numbers.csv';
            $content = $this->getLayout()->createBlock('orderfulfillment/adminhtml_trackingnumbers_grid')->getCsv(); //Update this
            $this->_sendUploadResponse($fileName, $content); //Update this
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-13
      相关资源
      最近更新 更多