by Devin Yang

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

在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

需要登入才可留言!

类似文章


dlaravel,docker

D-Laravel学习三阶段

闲聊D-Laravel的使用的三阶段,为何使用D-Laravel。 因为D-Laravel使用的设置档都相当的简单,极适何Docker的初学者学习, 并且就自不懂Docker运用的使用者,也可以借住./console及./create两个命令创建项目。

laravel

我如何强制Laravel使用HTTPS网址

我碰到的问题大概是这样,容器环境跑Laravel,容器内没有HTTPS造成Laravel用没有https的方式传送表单。在AppServiceProvider的boot补上如下语法\URL::forceScheme('https');

web-hosting,laravel

智邦安装Laravel 5.4经验分享

在智邦的Linux 7.0平台安装Laravel 5.4,成功运行案例分享, 因为原本是旧版的PHP,第一次可以免费转移至新版本, 所以请他们开了一个测试的php 7.0环境给我们测试,小调整后, Laravel的环境确实可在智邦的代管主机上运行。 本文介绍,我如何在智邦成功的运行Laravel的网站过程。