我正在尝试使用 Laravel 5.5 中的工厂创建一些测试数据。我正在运行这个
factory('App\Thread', 3)->create();
我收到错误消息Column 'user_id' cannot be null
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)
)'
我的 Thread 工厂创建了一个新的实例用户,但它似乎没有返回值。
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,
];
});
我根本没有修改用户工厂。我已从文档中复制并粘贴,但无法获取。任何帮助将不胜感激我是新手,我相信这很简单。