emiliogrv/nova-batch-load

A Laravel Nova XLS & CSV importer

Installs: 41 058

Dependents: 0

Suggesters: 0

Security: 0

Stars: 15

Watchers: 2

Forks: 4

Open Issues: 15

Language:Vue


README

Latest Version on Packagist Total Downloads

Description

This Package allow you to create many new entries at once, loading a file from creating resource screen.

Validation, fields and creating events are same that you declared into yours Resource's fields function.

Install

composer require emiliogrv/nova-batch-load

Usage

// in your Nova's Resources

// ...
use Emiliogrv\NovaBatchLoad\BatchLoadField;
// ...

public function fields(Request $request)
{
    return [
        // ...

        BatchLoadField::make()
            ->accept('.xlsx') // Optional
            ->defaultTabActive(1) // Optional
            ->ignoreAttributes('some_attribute_name') // Optional
            ->keepOriginalFields('belongs|select|boolean'), // Optional

        // ...
    ];
}

i18n

To translate add this to your resources/lang/vendor/nova/xx.json

    "File empty!": "Archivo vacío",
    "Load per file": "Carga por archivo",
    "Manual loading": "Carga manual",
    "Upload file": "Subir archivo",
    "Upload file & Add Another": "Subir archivo y Añadir Otro"

API

Function Type Default Description
accept String .xlsx, .xls, .csv Set the accepted file formats by extensions.
defaultTabActive Integer 0 Set the tab default when the component is mounted.
ignoreAttributes String Set attribute names that will be ignored and will not appear.
keepOriginalFields String belongs|morph Set which fields keep as original Nova format and options.
withoutOriginalFields Do not show any original fields.

Screenshots

Screenshot from 2019-07-05 15 12 44

Screenshot from 2019-07-05 15 13 12

Screenshot from 2019-07-05 15 13 56

Contributing

Thank you for considering contributing! Please leave your PR or issue.

Tested with Laravel Nova 2.*

License

MIT