friendsofhyperf/model-factory

The factory for Hyperf models.

v3.1.17 2024-02-27 00:32 UTC

README

Latest Stable Version Total Downloads License

Installation

Install the package with Composer:

composer require friendsofhyperf/model-factory --dev

Also, publish the vendor config files to your application (necessary for the dependencies):

php bin/hyperf.php vendor:publish friendsofhyperf/model-factory

Example usage

/factories/user_factory.php

<?php


declare(strict_types=1);
/**
 * This file is part of friendsofhyperf/components.
 *
 * @link     https://github.com/friendsofhyperf/components
 * @document https://github.com/friendsofhyperf/components/blob/3.0/README.md
 * @contact  huangdijia@gmail.com
 */
use App\Model\User;


$factory->define(User::class, function (Faker\Generator $faker) {
    return [
        'name' => $faker->name,
        'email' => $faker->unique()->email,
    ];
});

/seeders/user_seeder.php

<?php

declare(strict_types=1);

use Hyperf\Database\Seeders\Seeder;
use App\Model\User;
use function FriendsOfHyperf\ModelFactory\factory;

class UserSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run(): void
    {
        // Create 1 user with name 'Admin'
        factory(User::class)->create([
            'name' => 'Admin'
        ]);


        // Create 20 random users
        factory(User::class, 20)->create();
    }
}

Contact

License

MIT