当咱们建立好表结构后 一般都要生成一些测试用的数据来测试,应对这个场景呢 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