by Devin Yang

建立于: 8年前 ( 更新: 8年前 )

在Laravel中,如何用ModelFactory创建中文的假数据呢?
我是这么做的参考看看吧。
<?php
use FakerFactory as TwFacker;
/** @var IlluminateDatabaseEloquentFactory $factory */
$factory->define(AppUser::class, function (FakerGenerator $faker) {
static $password;
$tw_faker = TwFacker::create('zh_TW');
return [
'name' => $tw_faker->name,
'address' => $tw_faker->address,
'city' => preg_replace('#(.{3})(.*)#um', '$1', $tw_faker->city),
'email' => $faker->unique()->safeEmail,
'password' => $password ?: $password = bcrypt('secret'),
'remember_token' => str_random(10),
];
});

自定义一个TwFacker的别名,我们就可以使用他了。
在这里用 $tw_faker->name 取代原来Laravel提供的 $faker->name ,所以就可以保存中文的名字。

我们也可以自己在Laravel的专安目录下,的vendor/fzaninotto/faker/src/Faker/Provider/zh_TW进行相关本地化的文件调整。

例如Text.php的文本,即可以生成更符合我们所需要的假数据中文啦..
https://github.com/fzaninotto/Faker/blob/master/src/Faker/Provider/zh_TW/Text.php

Tags: laravel ModelFactory

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


laravel

Laravel上的表单方法欺骗

为何Laravel需要有Form Method Spoofing呢? 因为HTML表单并不支持PUT、PATCH及DELETE等动作,因此在Laravel上 在提交HTML表单送出时,我们需要透过一个隐藏的_method输入栏,作为HTTP的请求发送。

laravel storage

我如何用Laravel的Storage的sftp driver同步文件

SFTP的安装及设置不在本篇讨论范围,如果您想了解,建议可以看另一篇https://www.ccc.tc/article/Laravel-SFTP-Driver-Configuration本篇我要用极快速的Sample Demo我如何用自建的artisan的命令同步远程的数据到本地端。或许有人会问为何不用rsync,呀本篇就是要介绍用Storage的方式同步文件。🤪直接看code吧,我在config/filesystems.php设置了一个sftp磁盘叫ccc。

dlaravel

D-Laravel上的.env.example档说明

本文说明关於D-Laravel上的.env设置 MYSQL_ROOT_PASSWORD=secret LARAVEL_INSTALLER='container' DOCKER_SERVICES='docker-compose.yml service/redis.yml'