digital-drifter / laravel-cli-seeder
从命令行生成基于模式的测试数据。
dev-master
2018-07-02 22:46 UTC
Requires
- php: >=7.1.0
Requires (Dev)
- doctrine/dbal: 2.7.*
- fzaninotto/faker: 1.7.*
- illuminate/config: 5.6.*
- illuminate/database: 5.6.*
- illuminate/support: 5.6.*
This package is not auto-updated.
Last update: 2024-09-29 23:59:16 UTC
README
A (semi) intelligent utility to generate test data quickly.
关于
这个包背后的想法是,根据一个作为中心参考点的表来生成测试数据。通常情况下,应用程序会有一张表有效地作为关系图的根节点。例如,一个典型的多租户应用程序将定义租户、账户、客户等表,其他表则通过外键与这些表关联。
以 tenants
作为示例表,可能还有 users
、settings
和 posts
表,每个表都有一个 tenant_id
。通过在配置中将 Tenant
模型设置为父模型,这个包将查询所有的 tenants
并提示选择一个用于生成过程。任何遇到列名 tenant_id
的时候,都将使用所选 tenant
的主键。
此外,当检测到其他外键时,它将尝试仅使用那些分配给 tenant
的外键。
安装
composer require digital-drifter/laravel-cli-seeder
使用
php artisan cli-seeder:generate
配置
config/cli-seeder.php
<?php use App\Models\Tenant; return [ /** * Decide on a parent model as explained above. * Set the primary key column name. * Set the column used for display purposes. */ 'parent' => [ 'model' => Tenant::class, 'primary_key' => 'id', 'display_name' => 'name' ] ];