ericmaicon / yii2-export
这只是另一个yii2导出菜单组件。
1.0
2016-03-16 21:08 UTC
Requires
- box/spout: 2.4.2
- pda/pheanstalk: ^3.1
- videlalvaro/php-amqplib: 2.2.*
- yiisoft/yii2: 2.0.7
- yiisoft/yii2-bootstrap: 2.0.5
Requires (Dev)
- phpunit/phpunit: 4.0.*
This package is not auto-updated.
Last update: 2024-09-20 19:19:48 UTC
README
本库的主要目的不是替换kartik-v/yii2-export。Kartik的版本有很多特性,本版本未实现。
这是一个从头开始编写的新yii2-export小部件,以提高性能。
这个想法是在PHPExcel无法快速生成大型的Excel文件时出现的。第一个特性是将报告生成任务派发到队列中。
不仅如此,另一个特性是用spout替换PHPExcel,成功减少了耗时。
安装
安装此扩展的首选方式是通过composer。
运行以下命令
$ composer require ericmaicon/yii2-export:*
或将以下代码添加到您的composer.json文件的require部分:
"ericmaicon/yii2-export": "*"
使用方法
与网格一起使用
<?= \Da\export\GridView::widget([
'dataProvider' => $dataProvider,
]); ?>
要使用Kartik的网格,您需要重写renderExport方法
<?php
use Da\export\ExportMenu;
class GridView extends \kartik\grid\GridView
{
public function renderExport()
{
return ExportMenu::widget([
'dataProvider' => $this->dataProvider,
'columns' => $this->columns,
]);
}
}
独立使用
其他配置
队列
[
'target' => \Da\export\ExportMenu::TARGET_QUEUE,
'queueConfig' => [
'queueName' => \common\models\ReportModel::REPORT_TUBE,
'queueAdapter' => \Da\export\queue\rabbitmq\RabbitMqQueueStoreAdapter::className(),
'queueMessage' => function () {
}
]
]
目标
[
'target' => \Da\export\ExportMenu::TARGET_SELF,
]
文件名
[
'filename' => 'test',
]
导出页脚
[
'exportFooter' => true,
]
选项
[
'class' => 'btn-group',
]
下拉选项
[
'class' => 'btn btn-default',
'label' => 'Export',
'menuOptions' => [
'class' => 'dropdown-menu dropdown-menu-right'
]
]
下拉项
[
ExportMenu::FORMAT_CSV => [
'label' => 'CSV',
'options' => [
'title' => 'Comma Separated Values',
'data-id' => ExportMenu::FORMAT_CSV,
],
'url' => 'javascript:;',
'className' => CsvOption::className(),
]
]
选中选项
[
'selectedOption' => ExportMenu::FORMAT_CSV,
]
测试
$ ./vendor/bin/phpunit
缺少什么?
- PDF、HTML和TXT导出选项
- 确认警报
- 列选择器
- 存储文件
- 事件
- 国际化