lucaterribili / laravel-seeder
基于版本的、环境驱动的 Laravel Seeders。当原始版本没有更新到 Laravel 5.7 时使用。
v9.0.0
2022-02-26 09:37 UTC
Requires
- illuminate/console: 5.7.*|5.8.*|^6.0|^7.0|^8.0|^9.0
- illuminate/database: 5.7.*|5.8.*|^6.0|^7.0|^8.0|^9.0
- illuminate/filesystem: 5.7.*|5.8.*|^6.0|^7.0|^8.0|^9.0
- illuminate/support: 5.7.*|5.8.*|^6.0|^7.0|^8.0|^9.0
Requires (Dev)
- mockery/mockery: ^1.1
- orchestra/testbench: ^3.0
- phpunit/phpunit: ^7.0|^8.0|^9.0
README
在 Laravel 中当前进行的播种操作仅适用于开发构建,但如果你正在迭代创建数据库,并且希望在开发过程中不断清空并重新填充数据库呢?
如果你想在生产数据库中播种与开发中使用不同的数据呢?如果你想在当前处于生产状态的数据库中添加的新表中播种新数据呢?
LaravelSeeder 将 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
将只会运行尚未运行的种子。 - 允许你运行相同模型/表的多个种子
- 如果你数据库处于生产状态,会提示你
用法
当你安装 LaravelSeeder 时,将提供各种 artisan 命令,这些命令使用你习惯使用的与迁移相同的方法。
本地开发
项目捆绑了一个带有 PHP 7.2、XDebug 和 Composer 的 Dockerfile,以简化本地开发。
要轻松启动本地开发环境,请使用 Docker Compose 配置
docker-compose up -d --build
默认情况下,入口脚本将为你安装 Composer 依赖项。
要运行测试套件,执行以下操作
docker-compose exec laravel-seeder test.sh
要运行代码覆盖率套件,执行以下操作
docker-compose exec laravel-seeder code-coverage.sh
祝您测试愉快!