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

需要登入才可留言!

類似的文章


dlaravel

使用docker in docker建立D-Laravel測試環境。

D-Laravel是一個極易使用並且極有彈性的Laravel開發環境,只要您是Mac的使用者,就算不懂Docker也可以透過他來建立Laravel的專案,進行開發,由於最近加入.env的功能新功能時,急者push,卻沒有完整測試,搞出了一堆新的Bug,所以,這次新增了一個新的dlaravel_test,bash的測試工具,透過doceker in docker的方式來跑測試。確保D-Laravel的每一次釋出都能是一個穩定的版本。

dlaravel,docker

D-Laravel學習三階段

閒聊D-Laravel的使用的三階段,為何使用D-Laravel。 因為D-Laravel使用的設定檔都相當的簡單,極適何Docker的初學者學習, 並且就自不懂Docker運用的使用者,也可以借住./console及./create兩個指令建立專案。

laravel

@dump介紹,Laravel 5.6.8新功能

在Laravel 5.6的directive多了一個新功能叫@dump了 讓我們來看看他有多cool。