では動作しません。私は、これらの分野でのポストモデルを持っている:ローカライズ偽物工場がlaravel
post_id
post_title
post_content
post_content_full
author
は今、私は偽物fa_IR
ローカライズされたデータを作成し、posts
テーブルに挿入するためにlaravel seddersとモデル工場を使用します。そのために
私はdatabase/factories/ModelFactory.php
でこれを書いた:
use Illuminate\Database\Seeder;
class PostsTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
factory(App\Post::class, 5)->create();
}
}
そしてAppServiceProvider.php
で
register
関数にコードの下に追加:
$this->app->singleton(FakerGenerator::class, function() {
return FakerFactory::create('fa_IR');
});
$factory->define(App\Post::class, function (Faker\Generator $faker) {
return [
'post_title' => $faker->sentence,
'post_content' => $faker->paragraph,
'post_content_full' => $faker->paragraph(3),
'author' => $faker->name
];
});
は、その後、私はこのような
PostsTableSeeder
クラスを作成しました
しかし、シードを実行した後、laravelはデフォルトのロケール(en_US
)を使用し、fa_IR
を無視します。
私は他に何をするか分かりません。
更新:
がでも私はvendor/fzaninotto/faker/src/Faker/Factory.php
fa_IR
に何も変わっていないDEFAULT_LOCALE
のconstに変更。
はあなたでし
fa_IR
ローカライズでサポートされている、ドキュメントの迅速な検索が言っていることから、すべての言語でサポートされるわけではありません。この方法を試してみてください' - > address()'メソッドを試してみてください。使用している関数が 'fa_IR'言語でサポートされていない場合もあります。 – Neatはい、アドレスを使用すると機能します。 'paraphraph'が' fa_IR'言語でサポートされていないことを意味しましたか? –
悲しいことに、悲しいことですが、段落をカスタマイズすることは可能ですが、それはとても便利ではないようです。 – Neat