Localization 模型工厂生成拉丁语结果,非英语,不接受任何其他语言环境

Localization 模型工厂生成拉丁语结果,非英语,不接受任何其他语言环境,localization,laravel-5.1,faker,Localization,Laravel 5.1,Faker,我已经建立了我的模型工厂,它运行得很好,但是,生成的句子、单词和其他字符串都是拉丁语,我搜索了以下解决方案(对我不适用): ModelFactory.php $factory->define(App\Models\User::class,function(Faker\Generator$Faker) { $faker->locale=“en_US”//没有任何更改 返回[ ..... ]; } AppServiceProvider.php,甚至DatabaseServiceProvider.

我已经建立了我的模型工厂,它运行得很好,但是,生成的句子、单词和其他字符串都是拉丁语,我搜索了以下解决方案(对我不适用):

  • ModelFactory.php

    $factory->define(App\Models\User::class,function(Faker\Generator$Faker)
    {
    $faker->locale=“en_US”//没有任何更改
    返回[
    .....
    ];
    }
    
  • AppServiceProvider.php,甚至DatabaseServiceProvider.php

    $this->app->singleton(\Faker\Generator::class,function(){
    return\Faker\Factory::create('en_US');
    });
    
还有非英语的结果,比如:
Soluta doloremque在消费者中的应用。

奇怪的是在
vendor/fzaninoto/faker/src/faker/Factory.php
类中

第一行是
const DEFAULT\u LOCALE='en\u US';

使用create函数创建公共静态函数($locale=self::DEFAULT\u locale)

在做一些改变之前,我必须运行一些东西吗

我需要帮助我已经走到了死胡同

更新:

当我在用户模型上运行工厂时,它使用AppServiceProvider中的locale sat运行,默认值为True English,但是,我在
ModelFactory.php
中的User下得到的另一个模型是仅具有拉丁语结果的模型

以下是两者的代码:

//英语,可设置
$factory->define(App\Models\User::class,function)(Faker\Generator$Faker){
返回[
'name'=>$faker->name,
'email'=>$faker->email,
“密码”=>bcrypt(str_random(10)),
“记住令牌”=>str\u random(10),
];
});
//义务拉丁语
$factory->define(App\Models\Application::class,function)(Faker\Generator$Faker){
返回[
'title'=>$faker->句子('3'),
'说明'=>$faker->段落,
'field_id'=>$faker->numberBetween(1,3),
'在'=>$faker->dateTimeBetween('-1年')发布,',
“icon_url”=>$faker->imageUrl(256256),
“封面url”=>$faker->imageUrl(888444),
“android_url”=>$faker->url,
'ios_url'=>$faker->url,
'windows_url'=>$faker->url,
“安卓下载计数”=>$faker->randomDigit,
];
});

我比较了这两个模型,没有任何可疑之处。

这是Laravel用于生成数据库种子的包的一个限制


“句子”和“段落”都包含在的提供程序中。这是唯一的拉丁语言,不能更改为其他语言。

这是Laravel用于生成数据库种子的软件包的限制


“句子”和“段落”都包含在的提供程序中。这完全是拉丁语,不能更改为另一种语言。

的确,Laravel中包含的Faker软件包没有现成的解决方案,但值得一提的是,对于这一限制,有一个“黑客”解决方案

你不会得到漂亮的句子,但是如果你使用Faker的公司->流行语和公司->bs方法,你可以把一些非常幽默的英语句子串在一起,即使它们没有任何意义。但是如果你纯粹是在寻找英语单词串,而不关心它们的内容,那么利用这两种方法可能会有助于你理解你出去

在Laravel,我使用以下代码为我的新闻网站种子文章制作了一些漂亮的英文标题:

$title = ucwords($faker->catchPhrase .' '.$faker->bs);

的确,Laravel中包含的Faker软件包没有现成的解决方案,但值得一提的是,对于这一限制,有一个“黑客”解决方案

你不会得到漂亮的句子,但是如果你使用Faker的公司->流行语和公司->bs方法,你可以把一些非常幽默的英语句子串在一起,即使它们没有任何意义。但是如果你纯粹是在寻找英语单词串,而不关心它们的内容,那么利用这两种方法可能会有助于你理解你出去

在Laravel,我使用以下代码为我的新闻网站种子文章制作了一些漂亮的英文标题:

$title = ucwords($faker->catchPhrase .' '.$faker->bs);