Четырехзначный год не удалось найти данные отсутствуют
Я пытаюсь посеять с помощью фабрик в Laravel 5.2
мой код умирает на заводе пользователя:
$factory->define(AppUser::class, function (FakerGenerator $faker) {
$countries = Countries::all()->pluck('id')->toArray();
return [
'name' => $faker->name,
'email' => $faker->email,
'password' => bcrypt(str_random(10)),
'grade_id' => $faker->numberBetween(1, 5),
'country_id' => $faker->randomElement($countries),
'city' => $faker->city,
'latitude' => $faker->latitude,
'longitude' => $faker->longitude,
'role_id' => $faker->numberBetween(1, 3),
'verified' => true,
'remember_token' => str_random(10),
'provider' => '',
'provider_id' => str_random(5)
];
});
дает мне эту ошибку:
A four digit year could not be found Data missing
Я нашел причину, но не знаю как это исправить.
когда я звоню на фабрику, я называю это так:
factory(User::class)->create(['role_id',2]);
если я назову это так:
factory(User::class)->create();
Я больше не получаю ошибок. Но мне действительно нужно посеять разных пользователей...
есть идеи???
2 ответов
вы пробовали использовать массив значений ключа в create
способ:
factory(User::class)->create(['role_id' => 2]);
Я мог опоздать на вечеринку, у меня была та же проблема, и оказалось, что это потому, что я предоставил ключ без возвращаемого значения в массиве.
избавиться 'provider' => ''
.
что касается причины проблемы, я действительно не знаю, но это имеет какое-то отношение к углероду