sparclex / nova-import-card
A card which lets you batch import resources
Installs: 53 607
Dependents: 0
Suggesters: 0
Security: 0
Stars: 31
Watchers: 2
Forks: 25
Open Issues: 10
Requires
- php: >=7.1
- illuminate/support: ^5.6
- laravel/nova: ~2.0
- maatwebsite/excel: ^3.1
Requires (Dev)
- mockery/mockery: ~1.0
- orchestra/database: ^3.8
- orchestra/testbench: ^3.8
- phpunit/phpunit: ^8.0
- predis/predis: ^1.1
This package is auto-updated.
Last update: 2020-04-18 11:24:15 UTC
README
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.
Installation
You can install the package in to a Laravel app that uses Nova via composer:
composer require sparclex/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 \Sparclex\NovaImportCard\NovaImportCard(\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 Sparclex\NovaImportCard\BasicImporter
and overwrite the different methods. During the import process you may throw an exception of the type Sparclex\NovaImportCard\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.