Как создать экземпляр пользователя на другой фабрике в Laravel?

Я пытаюсь создать некоторые тестовые данные, используя фабрики в Laravel 5.5. Я бегу это

factory('App\Thread', 3)->create();

Я получаю сообщение об ошибке Столбец user_id не может быть пустым

Column 'user_id' cannot be null (SQL: insert into thread
s` (user_id, title, body, updated_at, created_at) values (, Quia modi
aperiam eos aut., Sed voluptate ut quia ut. Et accusamus eaque est amet. Veniam
consectetur exercitationem id facere., 2017-09-04 04:38:11, 2017-09-04 04:38:11)
)'

Моя фабрика потоков создает нового пользователя экземпляра, но, похоже, не возвращает значение.

use Faker\Generator as Faker;

$factory->define(App\Thread::class, function (Faker $faker) {

return [
'user_id' => function () {
return factory('App\User')->make()->id;
},
'title' => $faker->sentence,
'body' => $faker->paragraph,
];
});

Я не изменил фабрику пользователей вообще. Я скопировал и вставил из документация и не может получить это. Любая помощь будет оценена, я новичок в этом, и я уверен, что это что-то простое.

1

Решение

Я печатал

factory(App\Thread::class, 3)->create();

вместо

factory('App\Thread', 3)->create();

Я не знал, что они разные.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector