gpt4 book ai didi

export-to-csv - magento 管理编辑表单选项卡中导出 CSV 功能

转载 作者:行者123 更新时间:2023-12-01 14:19:53 25 4
gpt4 key购买 nike

我在管理编辑表单选项卡中有一个 magento 网格集合。我需要网格的导出 csv 功能。它可以在没有搜索过滤器的完整网格列表中正常工作。如何为过滤后的集合导出 csv?

最佳答案

转到您的模块或扩展文件夹,然后转到/Block/Adminhtml/Blog/Grid.php。打开此 Grid.php 文件并搜索函数 protected function _prepareCollection() 并在该函数下的 returnparent::_prepareColumns(); 之前添加以下代码。

$this->addExportType('*/*/exportCsv', Mage::helper('blog')->__('CSV'));
$this->addExportType('*/*/exportXml', Mage::helper('blog')->__('XML'));

添加此代码后,它可能看起来像这样:接下来,在此扩展或模块文件夹中,转到/controllers/Adminhtml/并打开 Controller 文件并在类下添加以下代码(在最后一个“}”之前添加页面底部的代码)

public function exportCsvAction()
{
$fileName = 'blog.csv';
$content = $this->getLayout()->createBlock('[your-module-name]/adminhtml_[your-module-name]_grid')
->getCsv();

$this->_sendUploadResponse($fileName, $content);
}

public function exportXmlAction()
{
$fileName = 'blog.xml';
$content = $this->getLayout()->createBlock('[your-module-name]/adminhtml_[your-module-name]_grid')
->getXml();

$this->_sendUploadResponse($fileName, $content);
}

protected function _sendUploadResponse($fileName, $content, $contentType='application/octet-stream')
{
$response = $this->getResponse();
$response->setHeader('HTTP/1.1 200 OK','');
$response->setHeader('Pragma', 'public', true);
$response->setHeader('Cache-Control', 'must-revalidate, post-check=0, pre-check=0', true);
$response->setHeader('Content-Disposition', 'attachment; filename='.$fileName);
$response->setHeader('Last-Modified', date('r'));
$response->setHeader('Accept-Ranges', 'bytes');
$response->setHeader('Content-Length', strlen($content));
$response->setHeader('Content-type', $contentType);
$response->setBody($content);
$response->sendResponse();
die;
}

现在将 [your-module-name] 文本替换为您的扩展名或模块名称,然后保存然后检查。

*如果这篇文章对您有帮助,请点赞!*

关于export-to-csv - magento 管理编辑表单选项卡中导出 CSV 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32074406/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com