2016-11-08 80 views
1

與騙子種子數據庫時具體地說該錯誤僅發生這種情況種子陣列到字符串轉換試圖laravel 5.3

[Illuminate\Database\QueryException]                 
    Array to string conversion (SQL: insert into `profiles` (`agency_id`, `name`, `bio`, `age`, `hair_ty 
    pe`, `updated_at`, `created_at`) values (1, Cathy, Placeat voluptas tenetur corrupti et., 44, short, 
    2016-11-08 15:09:00, 2016-11-08 15:09:00)) 

    [ErrorException]    
    Array to string conversion 

是否有任何屬性我需要添加以使其工作,SQL清楚地顯示查詢異常中隨機生成的值,laravel日誌中沒有任何內容。

播種機:

namespace App; 

use App\Profile; 

use Illuminate\Database\Seeder; 

class ProfileTableSeeder extends Seeder 
{ 
    /** 
    * Run the database seeds. 
    * 
    * @return void 
    */ 
    public function run() 
    { 

     $faker = \Faker\Factory::create(); 

     foreach(range(1,50) as $index) 
     { 
      Profile::create([ 
       'agency_id'   => '1', 
       'name'    => $faker->firstName($gender = 'female'), 
       'bio'    => $faker->sentence(4), 
       'age'    => $faker->numberBetween($min=19, $max=46), 
       'hair_type'   => $faker->randomElements($array = array('long','short','shoulder length')) 
     ]); 
    } 
    } 
} 
+0

你試過'$ faker-> randomElement()'而不是?我不確定,但我認爲'randomElements()'需要**數組**(_ $ count_)之後的第二個參數。 – Mihailo

回答

1

@Mihailo - 由於有時你看不到的期待。

有兩種定義:

$faker->randomElements($array = array('a','b','c'), $count = 1) //array('c') 
$faker->randomElement($array = array('a','b','c')) //b 

我用的是前者,並期待從後者的結果。

謝謝

+0

不是問題,很高興我能幫上忙。 – Mihailo