Stars: 164
Forks: 123
Pull Requests: 88
Issues: 285
Watchers: 16
Last Updated: 2023-07-25 11:05:15
A library to export server/db data in various formats (e.g. excel, html, pdf, csv etc.)
License: Other
Languages: PHP, CSS, JavaScript
A library to export server/db data in various formats (e.g. excel, html, pdf, csv etc.) using the PhpSpreadsheet library. The widget allows you to configure the dataProvider, columns just like a yii\grid\GridView. However, it just displays the export actions in form of a ButtonDropdown menu, for embedding into any of your GridView or other components.
In addition, with release v1.2.0, the extension also displays a handy grid columns selector for controlling the columns for export. The features available with the column selector are:
container
property allows you to group the export menu and column selector dropdowns.template
property for manipulating the display of menu, column selector or additional buttons in button group.columnSelectorOptions
columnSelector
property settings.selectedColumns
(you must set the selected column keys)disabledColumns
(you must set the disabled column keys)hiddenColumns
(you must set the hidden column keys)noExportColumns
(you must set the no export column keys)showColumnSelector
propertyasDropdown
is set to true
.The extension offers configurable user interfaces for advanced cases using view templates.
exportColumnsView
allows you to setup your own custom view file for rendering the column selector dropdown.afterSaveView
allows you to setup your own after save view file if you are configuring to save exported file on server.You can see detailed documentation and demonstration on usage of the extension.
NOTE: Refer the CHANGE LOG for details on changes to various releases.
The preferred way to install this extension is through composer.
Note: Read this web tip /wiki on setting the
minimum-stability
settings for your application's composer.json.
Install the necessary pre-requisite (Krajee Dropdown Extension) based on your bootstrap version:
kartik-v/yii2-bootstrap5-dropdown
kartik-v/yii2-bootstrap4-dropdown
kartik-v/yii2-dropdown-x
For example if you are using the Bootstrap v5.x add the following to the require
section of your composer.json
file:
"kartik-v/yii2-bootstrap5-dropdown": "@dev"
Either run:
$ php composer.phar require kartik-v/yii2-export "@dev"
or add
"kartik-v/yii2-export": "@dev"
to the require
section of your composer.json
file.
Note: you must run
composer update
to have the latest stable dependencies likekartik-v/yii2-krajee-base
The yii2-export
extension is dependent on yii2-grid
extension module. In order to start using yii2-export
, you need to ensure setup of the gridview
module in your application modules configuration file. For example:
'modules' => [
'gridview' => [
'class' => 'kartik\grid\Module',
// other module settings
]
]
use kartik\export\ExportMenu;
$gridColumns = [
['class' => 'yii\grid\SerialColumn'],
'id',
'name',
'color',
'publish_date',
'status',
['class' => 'yii\grid\ActionColumn'],
];
// Renders a export dropdown menu
echo ExportMenu::widget([
'dataProvider' => $dataProvider,
'columns' => $gridColumns,
'clearBuffers' => true, //optional
]);
// You can choose to render your own GridView separately
echo \kartik\grid\GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => $gridColumns
]);
This project exists thanks to all the people who contribute. [Contribute].
Become a financial contributor and help us sustain our community. [Contribute]
Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]
yii2-export is released under the BSD-3-Clause License. See the bundled LICENSE.md
for details.