数据填充
2018-02-24 15:53 更新
Laravel 可以简单的使用 seed
类,填充测试数据到数据库。所有的 seed
类放在 database/seeds
目录下。可以使用任何你想要的类名称,但是应该遵守某些大小写规范,如 UserTableSeeder
之类。默认已经有一个 DatabaseSeeder
类。在这个类里,使用 call
方法执行其他的 seed
类,让你控制填充的顺序。
Seed 类例子
class DatabaseSeeder extends Seeder {
public function run()
{
$this->call('UserTableSeeder');
$this->command->info('User table seeded!');
}
}
class UserTableSeeder extends Seeder {
public function run()
{
DB::table('users')->delete();
User::create(['email' => 'foo@bar.com']);
}
}
要执行数据填充,可以使用 Artisan CLI 的 db:seed 命令:
php artisan db:seed
默认 db:seed
命令会执行 DatabaseSeeder
,可以使用它来调用其他 seed
类,不过,也可以使用 --class
参数指定要单独执行的类:
php artisan db:seed --class=UserTableSeeder
你也可以使用 migrate:refresh
命令填充数据,它会回滚并且再次执行所有迁移:
php artisan migrate:refresh --seed
以上内容是否对您有帮助:
← 回滚迁移
更多建议: