Я пытаюсь использовать фабрику моделей для заполнения своей базы данных, но при ее запуске я получаю сообщение об ошибке:
Trying to get property 'id' of non-object
Вот мой код:
// TasksTableSeeder.php
factory(pams\Task::class, '2000', rand(1, 30))->create();
// ModelFactory.php
$factory->defineAs(pams\Task::class, '2000', function (Faker\Generator $faker) {
static $task_number = 01;
return [
'task_number' => $task_number++,
'ata_code' => '52-00-00',
'time_estimate' => $faker->randomFloat($nbMaxDecimals = 2, $min = 0.25, $max = 50),
'work_order_id' => '2000',
'description' => $faker->text($maxNbChars = 75),
'action' => '',
'duplicate' => '0',
'certified_by' => '1',
'certified_date' => '2015-11-08',
'status' => '1',
'created_by' => '1',
'modified_by' => '1',
'created_at' => Carbon\Carbon::now()->format('Y-m-d H:i:s'),
'updated_at' => Carbon\Carbon::now()->format('Y-m-d H:i:s'),
];
});
Я пытался удалить все переменные из фабрики моделей и использовать константы, но это не такэто исправить.Я попытался извлечь данные из ModelFactory.php
и поместить их непосредственно в TasksTableSeeder.php
, и это работает, однако я использовал константы и не переменные.
Я не могу понять, как я себя понимаюо каком «ид» идет речь.
Я использую Laravel v5.1