2017-02-19 41 views
0

私のテーブルアドレスのシーダーを作成しようとしていますが、テーブルの1つのフィールドは外部キーです。このFkはテーブルユーザーのユーザーIDを参照します。 外部キーフィールドを持つSeederを作成するLaravel 5.3

マイシーダクラス:私はデシベル実行すると

class AddressesSeeder extends Seeder 
{ 

    public function run() 
    { 
     $faker = Faker::create(); 
     // following line retrieve all the user_ids from DB 
     $users = User::all()->pluck('id'); 
     foreach(range(1,50) as $index){ 
      $address = Address::create([ 
       'user_id' => $faker->randomElement($users), 
       'street' => $faker->street, 
       'number' => $faker->number, 
       'city' => $faker->city, 
       'state' => $faker->state, 
       'created_at' => $faker->datetime, 
       'updated_at' => $faker->datetime, 
      ]); 
     } 
    } 
} 

:種子を、私はエラーをreceave:

[ErrorException]偽物\プロバイダー\ベース:: randomElementsに渡さ 引数1()ライン205上の\ \ XAMPP \ htdocsに\ PROJETO \ベンダ\ fzaninotto \偽 R \のsrc \の偽物の\プロバイダBase.phpというや理由pluck()にです

答えて

0

を定義した:Cで呼ばれるタイプの配列、指定されたオブジェクト、でなければなりません。 objecを返すそれを解析するにはtoArray()を使用します。

+0

ありがとうございますRohanですが、このように、作業も - > $ users = User :: pluck( 'id') - > all(); –

+0

ありがとうございました。私は 'list()'との経験がありました(非難されました) –

関連する問題