Laravel Factory-如何使用Factory制作有意义的伪数据

时间:2019-01-12 11:48:43

标签: php laravel factory

我想确定韩国和日本的性别,年龄和国籍,但我不知道该怎么办。

$factory->define(User::class, function (Faker $faker) {

    $gender = $faker->randomElement(['men', 'women']);
    $address = $faker->randomElement(['seoul', 'fucuoka', 'tokyo']);
    $country = $faker->randomElement(['korea', 'japan']);
    $age = rand(3, 100);

    return [
        'name'              => $faker->name,
        'email'             => $faker->unique()->safeEmail,
        'email_verified_at' => now(),
        'password'          => '$2y$10$TKh8H1.PfQx37YgCzwiKb.KjNyWgaHb9cbcoQgdIVFlYg7B77UdFm', // secret,
        'country'           => $country,
        'address'           => $address,
        'age'               => $age,
        'gender'            => $gender,
        'remember_token'    => str_random(10),
    ];
});

2 个答案:

答案 0 :(得分:1)

您是否考虑过通过Laravel将语言环境设置为韩语?然后Faker会出示韩国地址等。

将此添加到config文件夹中的app.php文件中:

'faker_locale' => 'ko_KR',

可以在这里找到所有可用的语言环境:

https://faker.readthedocs.io/en/master/locales/ko_KR.html

答案 1 :(得分:0)

将此行(键)添加到您的wchar_t文件中

config/app.php

并运行'faker_locale' => 'ko_KR', 命令

config:cache

如果不希望全局创建另一个类似的对象

 php artisan config:cache

,并且您应该像这样添加

 Faker\Factory::create('ko_KR')