如何将 Laravel 数据表里的数据导出成 Seeder 文件

php中文网
发布: 2016-06-23 13:12:38
原创
1184人浏览过

本文经授权转自 phphub 社区

说明

开发者使用 Laravel 部署一个新项目的时候, 通常会使用 seeder 快速填充本地数据以方便开发调试.

iseed 扩展包提供了可将数据表里的数据直接转换为 seeder 文件的功能.

本项目由 The EST Group 团队成员 @monkey 整理发布, 首发地为 PHPHub 社区 .

使用场景

通常情况下, 我们会希望本地开发环境数据与生产完全一致, 这样开发者的开发与调试会更加的直观、有效率.当我们想将生产环境的数据同步到所有开发者的系统中, 此扩展包将会非常有用.

文章的 DEMO 项目

截图

运行

Demo 代码请见:

https://github.com/zhengjinghua/est-isee...

请参照此文档运行 Demo:

https://phphub.org/topics/1902

文章概览

  1. 安装;

  2. 基础用法;

  3. 推荐实践;

  4. 更多用法.

接下来是详细解说

安装

1). 直接运行以下命令安装扩展包

阿里云-虚拟数字人
阿里云-虚拟数字人

阿里云-虚拟数字人是什么? ...

阿里云-虚拟数字人 2
查看详情 阿里云-虚拟数字人
composer require intervention/image
登录后复制

2). 在你的 config/app.php 文件中添加 Service Provider

'providers' => [    ...    Orangehill\Iseed\IseedServiceProvider::class,],
登录后复制

安装结束, 就这么简单.

基础用法

导出指定表的数据

在 php artisan iseed 后面带上本地数据表的名称, 可直接将数据库表的内容转换为 seeder 文件.

如下可生成 users 表的 seeder 文件:

php artisan iseed users
登录后复制

也可选择同时生成 users 和 topics seeder 文件:

php artisan iseed users,topics
登录后复制

强制覆盖导出文件 -- force

在命令行后面带上 force 参数, 将强制覆盖原有生成的 seeder 文件, 如下:

php artisan iseed users --force
登录后复制

将直接覆盖之前生成的 UsersTableSeeder.php 文件

根据上面两个命令导出的 UsersTableSeeder.php 文件内容如下图:

导出指定数据库里的表 -- database

使用 database 参数, 可指定数据库里的数据表, 如下:

php artisan iseed users --database=mysql2
登录后复制

推荐实践

在实际开发的过程中, 为了不影响生产环境的正常运转, 建议使用以下方式同步开发者的 seed 数据:

  1. 将生产环境的备份数据导入到某一个开发者的电脑中;

  2. 此开发者运行 php artisan iseed ... 生成指定的 seeder 文件;

  3. 将 seeder 文件提交版本管理, 其他人同步更新并导入.

更多用法

关于其它更加详尽的命令行, 如: max, prerun, postrun 等使用可查看 原文档 .

欢迎关注 LaravelTips , 一个专注于为 Laravel 开发者服务, 致力于帮助开发者更好的掌握 Laravel 框架, 提升开发效率的微信公众号.

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号