用过laravel的都知道,我们表里面的数据通常是保存到seeder文件中,但是有些时候需要将表里已有的数据导出到seed文件中,那么怎么导出呢,其实这里有个扩展包叫iseed,我们可以利用它来把数据表里的数据导出到seed中。
安装isseed
安装isseed,我这里是laravel 5.4,安装的iseed是2.1版本的,你们看情况,随意
代码语言:javascript复制composer require "orangehill/iseed": "2.1"
将iseed加入到composer.json文件中去
把iseed加入到服务提供者
在laravel项目目录 config/app.php 添加providers
代码语言:javascript复制'providers' = [
...
OrangehillIseedIseedServiceProvider::class,
],
更新composer 命令行执行
代码语言:javascript复制composer update
到此安装结束
iseed用法
导出单个表的数据
比如我要表某个表的数据导出到seed文件,那么命令为:php artisan iseed 你要转换的表名
假如说我要用户表的数据导出,命令应该是:
代码语言:javascript复制php artisan iseed users
导出多个表的数据
和导出单个类似,多个表用逗号隔开
代码语言:javascript复制php artisan iseed 表1,表2
导出数据并且强制覆盖
有时候我们导出的时候,这个seed文件已经存在了,我们要覆盖它,要怎么做呢
很简单,其他不变,只需要在命令中加入–force就OK了,
代码语言:javascript复制php artisan iseed 表名1[,表名2...]--force
导出指定的数据库里指定的表,并生成seed文件
代码语言:javascript复制php artisan iseed 表名--database=数据库名
基本上就是这么用的,差不多就到这里,实践是检验真理的唯一标准,还不快去。。。
以上这篇Laravel 将数据表的数据导出,并生成seeds种子文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考。