當咱們建立好表結構後 一般都要生成一些測試用的數據來測試,應對這個場景呢 Laravel提供了至關好的服務 --seedphp
Laravel的seeder都會放在:/database/seeders 目錄中,而且會提供一個DatabaseSeeder 在DatabaseSeeder的run方法中你能夠調用其餘你建立的seederdom
運行artisan建立:測試
php artisan make:seeder ArticlesSeeder
seeder中只有一個run方法 咱們能夠在run方法中執行咱們的插入方法 在run中能夠用構建器 也能夠用模型工廠(關於這兩點後續會寫到哦)this
public function run() { DB::table('articles')->insert([ 'title' => str_random(20), 'body' => str_random(200), ]); }
public function run() { factory(\App\User::class, 10)->create(); }
這樣就建立了10個用戶。spa
好比說 咱就執行 ArticlesSeeder 這個填充器 能夠這樣寫:code
php artisan db:seed --class=ArticlesSeeder
默認執行就是執行 DatabaseSeeder 這個填充器:blog
php artisan db:seed
若是執行了 DatabaseSeeder 填充器,要不就在它的run方法中實現數據填充,要不就調用自定義填充器:it
class DatabaseSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { Model::unguard(); $this->call('ArticlesSeeder'); Model::reguard(); } }
而後運行:io
php artisan db:seed