notwarp/laravel-seeder

基于版本的、基于环境的种子器,用于Laravel。在原始版本不更新到Laravel 5.7时使用。

v10.0.1 2023-11-28 12:46 UTC

README

Build Status

在Laravel中目前所进行的种子操作仅适用于开发构建,但如果你正在迭代创建数据库,希望在开发过程中不断清空并重新填充数据库,该怎么办呢?

如果你想在开发中使用不同数据来种子生产数据库,或者想种子一个已添加到生产数据库的新表,该怎么办呢?

Laravel Seeder 将Laravel中的数据库迁移功能扩展到数据库种子器,使它们成为“可迁移的”。你习惯于Laravel迁移的所有功能都已被镜像,并且与种子器表现相似。

要求

  • Laravel >= 5.4
  • PHP >= 7.1

安装

  • 运行 composer require eighty8/laravel-seeder
  • LucaTerribili\LaravelSeeder\SeederServiceProvider::class 添加到 app/config/app.php 中的 providers 数组
  • 运行 php artisan vendor:publish 将配置文件推送到你的配置文件夹,如果你想要覆盖种子文件夹的名称或存储种子的表的名称

特性

  • 允许你在不同的环境中使用不同的值来种子数据库。
  • 允许你像Laravel目前处理迁移一样“版本化”种子。运行 php artisan seed 将只会运行尚未运行的种子。
  • 允许你运行同一模型/表的多个种子
  • 如果你的数据库处于生产状态,将会提示你

使用方法

当你安装 Laravel Seeder 时,将提供各种 artisan 命令,它们使用与迁移相同的方法。

本地开发

该项目包含一个带有 PHP 7.2、XDebug 和 Composer 的 Dockerfile,以方便本地开发。

要轻松启动本地开发环境,请使用 Docker Compose 配置

docker-compose up -d --build

默认情况下,entrypoint 脚本会为你安装 Composer 依赖。

要运行测试套件,执行以下命令

docker-compose exec laravel-seeder test.sh

要运行代码覆盖率套件,执行以下命令

docker-compose exec laravel-seeder code-coverage.sh

祝您测试愉快!