1
我想在Laravel 5.5中使用工廠創建一些測試數據。我運行這個如何在Laravel的另一家工廠創建用戶實例?
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,
];
});
我還沒有修改用戶工廠。我已從documentation複製並粘貼,無法獲取。任何幫助將不勝感激我是新來的,我相信這是簡單的。
你應該使用 - > create()代替 - > make()在線程工廠 –
有什麼區別?我看到有三個用戶以任何方式添加到數據庫中。我認爲make不會拯救他們。 – NinjaCoder