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使用HTTPS網址

我碰到的問題大概是這樣,容器環境跑Laravel,容器內沒有HTTPS造成Laravel用沒有https的方式傳送表單。在AppServiceProvider的boot補上如下語法\URL::forceScheme('https');

dlaravel

如何設定外網IP給D-Laravel上的Project?

這個影片介紹了在D-Laravel環境上,我們如何指定Public Ip(公有IP)給特定的Project的使用。 不論是外部Production環境的設定或是內網自己專案Demo時,都可參考此影片的設定方式哦 。 在影片中雖然我採用了PPPoE撥接的外網IP進行說明,但是我們改變一下也可以用自己電腦上的區網IP。 這樣就可以讓同事連到我們的D-Laravel的Project了。

laravel storage,sftp

用tinker測試Laravel的sftp自定義Storage::path及Storage::url

今天來測測Laravel上使用sftp driver,如果您沒用過,快來看看我測試的結果順便提一下,我們在Laravel的tinker環境中,進行Storage的功能很是方便的,不管是local或是遠端。調整完設定後,記得離開再進入。