2017-04-21 114 views
0

我在表中插入虛假記錄,但它不在數據庫中移動。您可以檢查我的代碼如下: -在laravel中插入查詢

public function up() 
    { 
     Schema::create('employees', function (Blueprint $table) { 
      $table->increments('id'); 
      $table->string('name'); 
      $table->string('email',255)->unique(); 
      $table->string('contact_number'); 
      $table->timestamps();  
     }); 

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

     $limit = 33; 

     for ($i = 0; $i < $limit; $i++) { 
      DB::table('employees')->insert([ 
       'name' => $faker->name, 
       'email' => $faker->unique()->email, 
       'contact_number' => $faker->phoneNumber, 
      ]); 
     } 
    } 

有人可以告訴我我在哪裏錯了嗎?請幫我解決一下這個。

回答

0

如果要將值添加到數據庫,應使用seeder。對於播種機檢查這裏:https://laravel.com/docs/5.4/seeding

+0

我試過,但沒有成功。 –

+0

請發佈您的播種代碼。 –

+0

public function run() $ faker = Faker \ Factory :: create(); $ limit = 33; ($ i = 0; $ i <$ limit; $ i ++)DB :: table('employees') - > insert('name'=> $ faker-> name, 'email' => $ faker-> unique() - >電子郵件, 'contact_number'=> $ faker-> phoneNumber, ]); } } –

0

推動這一邏輯來seeder

$limit = 33; 

for ($i = 0; $i < $limit; $i++) { 
    DB::table('employees')->insert([ 
     'name' => $faker->name, 
     'email' => $faker->unique()->email, 
     'contact_number' => $faker->phoneNumber, 
    ]); 
} 

然後運行php artisan db:seed命令來執行播種機。

0

使用PHP工匠製作:播種機EmployeesSeeder,比寫入新的播種機文件驗證碼:

class EmployeesSeeder extends Seeder 
{ 
    /** 
    * Run the database seeds. 
    * 
    * @return void 
    */ 
    public function run() 
    { 
     $faker = Faker\Factory::create(); 

     Employee::truncate(); 

     foreach(range(1, 33) as $index) 
     { 
      Employee::create([ 
       'name' => $faker->name, 
       'email' => $faker->unique()->email, 
       'contact_number' => $faker->phoneNumber, 
      ]); 
     }     
    } 
} 

更多detailіDatabase: Seeding