mcpField
L
laravel-migrations-and-factories

laravel-migrations-and-factories

github.com/noartem数据与数据库1374 次安装2 周前更新
代码仓库

关于 laravel-migrations-and-factories

用于管理 Laravel 数据库迁移、工厂和测试数据的技能,涵盖迁移回滚、合并后迁移的处理,以及测试中的数据准备。

主要功能

  1. 01为模型配套迁移和工厂
  2. 02不修改已合并的迁移
  3. 03用工厂状态构建真实数据
  4. 04测试中使用工厂和事务

适用场景

  1. 01为模型创建迁移和工厂
  2. 02为测试准备真实数据
  3. 03安全测试数据库变更并回滚

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/noartem/skills --skill laravel-migrations-and-factories

安装后在 Claude Code 中输入/laravel-migrations-and-factories确认已加载。

详细介绍

迁移和工厂

确保架构变更安全、可测试且可逆。

命令

php artisan make:model Post -mfc

# Run/rollback
php artisan migrate
php artisan migrate:rollback --step=1

# Fresh DB (dangerous; dev only)
php artisan migrate:fresh --seed

规则

  • 为每个新模型配套创建迁移和工厂
  • 如果迁移已合并到 main,则绝不修改它,应新增迁移
  • 在功能分支上,可以修改在该分支创建的迁移(如果尚未合并)
  • 在 Seeder 类中填充真实但精简的数据集;将大型数据集放在外部

工厂

  • 优先使用状态修饰器(例如 ->state([...])),而不是布尔标志
  • 在工厂中使用关联(例如 belongsTo)来构建真实的数据图
  • 保持工厂运行快速;尽可能将耗时的设置移到种子数据中

测试

  • 在测试中使用工厂;避免手动插入数据
  • 对涉及数据库的集成测试使用事务或 RefreshDatabase

评论

支持 Markdown