ashu2693/nova-import-card

一个允许您批量导入资源的卡片

v1.1.1 2022-03-28 07:27 UTC

This package is auto-updated.

Last update: 2024-09-28 12:36:23 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License StyleCI TravisCi codecov

laravel nova 的可定制导入卡片。这个包基本上就是 laravel-excel 导入的一个 UI。然而,它不是Maatwebsite 的官方包。

Nova Import Card Screenshot

安装

您可以通过 composer 将该包安装到使用 Nova 的 Laravel 应用中

composer require ashu2693/nova-import-card

接下来,您必须注册该卡片。这通常在相应的资源或 NovaServiceProvidercard 方法中完成。

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

// ...

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

自定义

要自定义导入过程,请创建一个新的导入器类。导入器类基本上就是 laravel-excel 包的导入实现。开始的最简单方法是扩展 Sparclex\NovaImportCard\BasicImporter 并重写不同的方法。在导入过程中,您可能需要抛出类型为 Sparclex\NovaImportCard\ImportException 的异常,带有用户可见的错误信息。您还可以添加 message(): String 方法来自定义成功信息。

自定义导入器类可以在全局或资源级别注册。

// app/Nova/User.php

class User extends Resource
{

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

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

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

测试

composer test

变更日志

请参阅 CHANGELOG 以获取有关最近更改的更多信息。

贡献

请参阅 CONTRIBUTING 以获取详细信息。

许可证

MIT 许可证(MIT)。请参阅 许可证文件 以获取更多信息。