Я пытаюсь написать фабрику для создания данных в моем Laravel веб-приложении. Вот мой код:
<?php
/** @var \Illuminate\Database\Eloquent\Factory $factory */
use App\Manuscript;
use Faker\Generator as Faker;
$factory->define(Manuscript::class, function (Faker $faker) {
return [
'physical_location' => $faker->randomElement(["Bangkok National Museum", <more items>]),
'classmark' => "$faker->phoneNumber()",
'place_of_origin' => $faker->randomElement([ "Ayutthaya", "Sukhothai", <more items> ]),
'date_of_creation' => $faker->randomElement(["6th century CE","7th century CE", <more items>]),
'associated_persons' => $faker->name($gender = 'male'),
'physical_description' => $faker->text(100),
'material' => $faker->text(100),
'format' => $faker->randomElement('Folio','Quarto','Codex','Scroll'),
'binding' => $faker->randomElement('String','Jute','Palm thread'),
'images' => " ",
'user_id' => App\User::first(),
'subject' => $faker->words(4, true),
'author' => $faker->name($gender = 'male'),
];
});
Тем не менее, я получаю следующую ошибку:
PHP Warning: array_keys() expects parameter 1 to be array, string given in C:/.../vendor/fzaninotto/faker/src/Faker/Provider/Base.php on line 195
Первоначально я пытался установить язык Faker на тайский, но это не помогло. вне. Я установил его на «en_NZ», но все равно получаю ту же ошибку.
Любая помощь здесь будет хорошей.