In my Laravel project I am using the Astrotomic Laravel Translatable package. I want to create a factory to generate random data.My factory code
public function definition(): array
{
$locales = ['uk', 'ru'];
$translations = collect($locales)->mapWithKeys(function($locale) {
return [
$locale => [
'slug' => fake()->unique()->randomNumber(4) . '-' . fake()->slug(3),
'name' => fake()->unique()->name(),
'description' => fake()->text(),
'education' => fake()->text(),
]
];
})->toArray();
return array_merge([
'city_id' => City::get()->random()->id,
'degree' => fake()->numberBetween(1, 2),
'qualification' => fake()->numberBetween(1, 3),
'start_year' => fake()->year(),
'viewed' => fake()->numberBetween(50, 5500),
'status' => true,
'image' => fake()->imageUrl(250, 250),
'sort_order' => fake()->numberBetween(0, 10),
'created_at' => fake()->dateTimeBetween('-4 week', '-3 week'),
'updated_at' => fake()->dateTimeBetween('-2 week', '-1 week'),
], $translations);
}
I get an error when starting the factory, please help me(
ErrorException
Array to string conversion
at vendorlaravelframeworksrcIlluminateSupportStr.php:964
960▕
961▕ $result = array_shift($segments);
962▕
963▕ foreach ($segments as $segment) {
➜ 964▕ $result .= (array_shift($replace) ?? $search).$segment;
965▕ }
966▕
967▕ return $result;
968▕ }
1 vendorlaravelframeworksrcIlluminateSupportStr.php:964
IlluminateFoundationBootstrapHandleExceptions::IlluminateFoundationBootstrap{closure}()
2 vendorlaravelframeworksrcIlluminateDatabaseQueryException.php:67
IlluminateSupportStr::replaceArray()