betalabs / laravel-seeder
基于版本的、环境相关的 Laravel Seeders。当原始版本未更新到 Laravel 5.7 时使用。
V6.4.1
2024-04-05 13:43 UTC
Requires
- php: ^8.1
- illuminate/console: ^10.0
- illuminate/database: ^10.0
- illuminate/filesystem: ^10.0
- illuminate/support: ^10.0
Requires (Dev)
- mockery/mockery: ^1.1
- orchestra/testbench: ^8.0
- phpunit/phpunit: ^10.3.0
This package is auto-updated.
Last update: 2024-09-05 14:26:27 UTC
README
当前 Laravel 中进行的种子操作仅适用于开发构建,但如果你是在迭代创建数据库,并希望在开发过程中不断清空并重新填充数据库,那该怎么办呢?
如果你想使用与开发中不同的数据来初始化生产数据库怎么办?如果你想在当前处于生产状态的数据表中添加新数据怎么办?
LaravelSeeder 将 Laravel 中的数据库迁移功能扩展到数据库种子器中,使其“可迁移”。所有你已经习惯的 Laravel 迁移功能都已在种子器中实现,并具有类似的行为。
要求
- Laravel >= 5.4
- PHP >= 7.1
安装
- 运行
composer require eighty8/laravel-seeder
- 将
Eighty8\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
默认情况下,entrypoint 脚本会为你安装 Composer 依赖项。
要运行测试套件,请执行以下操作
docker-compose exec laravel-seeder test.sh
要运行代码覆盖率套件,请执行以下操作
docker-compose exec laravel-seeder code-coverage.sh
祝您测试愉快!