geniusfactor / fibr-csv
一个基于Laravel的包,使批量导入CSV数据变得容易;是flynsarmy/csv-seeder的包装器
此包的官方仓库似乎已消失,因此该包已被冻结。
1.0.1
2018-02-26 12:05 UTC
Requires
- flynsarmy/csv-seeder: 1.0.*
- laravel/framework: ^5.6
This package is not auto-updated.
Last update: 2020-07-06 20:25:38 UTC
README
为flynsarmy/csv-seeder提供的简单包装类;使得在一个种子器中批量导入CSV文件变得更加容易。
发行历史
- 1.0.0 - 初次发布。
安装
在你的项目中,使用Composer引入依赖项
composer require 'geniusfactor/fibr-csv'
将以下条目添加到你的.env文件中,将报告每个导入的CSV文件(默认为false)
DB_CSV_VERBOSE_OUTPUT=true
使用方法
- 创建一个新的Seeder (
php artisan make:seeder {SeederName}) - 将Seeder修改为继承自
\FIBR\Seeders\CsvSeed - 定义一个数组,包含表名和关联的CSV文件的路径(相对于项目根目录)。
- 将你的Seeder添加到DatabaseSeeder类中
- 使用
php artisan migrate db:seed进行测试!
代码示例
你的Seeder可以像这样简单
<?php
class seed_geo_tables extends \FIBR\Seeders\CsvSeed
{
public function __construct()
{
}
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
$tables = array(
'countries' => 'database/csv/common/geo/countries.csv',
'territories' => 'database/csv/common/geo/territories.csv',
'municipalities' => 'database/csv/common/geo/municipalities.csv',
'regions' => 'database/csv/common/geo/regions.csv',
);
$this->bulkImport($tables);
}
}
特别感谢
- Taylor Ottwell为出色的Laravel框架
- Flynnsarmy为CSV Seeder项目,这是此包装器的基础