tu6ge/voyager-excel

voyager excel export hook

v2.2.0 2021-08-31 02:40 UTC

This package is auto-updated.

Last update: 2021-10-04 14:38:57 UTC


README

Tests Coverage Status Latest Stable Version Packagist Downloads styleci FOSSA Status PRs Welcome

a plugin of voyager for excel export

Required

  • voyager this is a missing laravel admin

Install

composer require tu6ge/voyager-excel

Usage

1. disable special Model

You can disable export button in special Model :

class Example extends Model
{
    public $disable_export = true;

    // ...
}

2. Allow export all records of special Model, default export selected records

class Example extends Model
{
    public $allow_export_all = true;

    // ...
}

3. Custom export excel content and format.

Now, You can customize the export excel content and format, Use more features of maatwebsite/excel:

  1. Create a custom export class , and extends Tu6ge\VoyagerExcel\Exports\AbstractExport :
<?php

namespace YourApp;

use Tu6ge\VoyagerExcel\Exports\AbstractExport;

class MyCustomExport extends AbstractExport
{
    protected $dataType;
    protected $model;

    public function __construct($dataType, array $ids)
    {
        $this->dataType = $dataType;
        $this->model = new $dataType->model_name(); // this is current Model instance
        // $ids is user selected record ids 

        // write your own idea
    }
}

Export class more usage, see laravel excel documents

  1. Associate the export with your model:
<?php

namespace Models;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    public $export_handler = \YourApp\MyCustomExport::class;
}

now, you export this Model data , the excel format is your custom.

Support Language

  • zh_CN
  • en

Test

run composer test command.

License

FOSSA Status

Links

Star

If this packages helped you, leave a star for the author.

Contributing

Contributing Guide