willis1776/nova-excel-import

A card which lets you batch import resources

Downloads

1

Stars

0

Version

v3.2.0

A card which lets you batch import resources

A customizable import card for laravel nova. This package is more or less just a UI for laravel-excel import. It is however not an official package from Maatwebsite.

Nova Import Card Screenshot

Installation

You can install the package in to a Laravel app that uses Nova via composer:

composer require willis1776/nova-import-card

Next up, you must register the card. This is typically done in the card method of the corresponding resource or the NovaServiceProvider.

// in app/Providers/NovaServiceProvider.php or app/Nova/<Resource>.php

// ...

public function card()
{
    return [
        // ...
        new \Willis1776\NovaExcelImport\NovaExcelImport(\App\Nova\User::class),
    ];
}

Customization

To customize the import process create a new importer class. The importer class is basically just an import implementation of the laravel-excel package. The easiest way to get started is to extend Willis1776\NovaExcelImport\BasicImporter and overwrite the different methods. During the import process you may throw an exception of the type Willis1776\NovaExcelImport\ImportException with an error message visible for the user. You may also add a message(): String method to customize the success message.

The custom importer class can be registered on global or resource basis.

// app/Nova/User.php

class User extends Resource
{

    public static $importer = CustomImporter::class;
    
    // ...
}

// or app/config/nova-import-card.php

return [
    'importer' => CustomImporter::class,
    
    // ...
]

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

License

The MIT License (MIT). Please see License File for more information.

Willis1776

Author

Willis1776