1.如果不存在,创建migrations表
php artisan migrate:install
2.创建迁移文件
php artisan migrate:make create_authors_table
可以在创建迁移的时候指定 --path 选项,指定的目录应该相对于安装目录的主目录:
php artisan migrate:make foo --path=app/migrations
--table 和 --create 选项可以被用来指定表名以及是否创建一个新表:
php artisan migrate:make add_votes_to_user_table --table=users
php artisan migrate:make create_users_table --create=users
3.修改迁移文件
例如:
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email');
$table->string('password');
$table->text('avatar');
$table->timestamp('login_time');
});
}
4.运行所有迁移
php artisan migrate
运行某个路径下的所有迁移
php artisan migrate --path=app/foo/migrations
运行某个包下的所有迁移
php artisan migrate --package=vendor/package
5.创建填充表数据的文件
php artisan make:seed UserTableSeeder
最后修改填充文件,例如
public function run()
{
\DB::table('user')->delete();
DB::table('user')->insert([
'name' => 'iplus',
'email' => 'iplus@iplus.com',
'password' => '125800',
]);
}
6.执行数据填充
php artisan db:seed
单独运行某个填充器要加上--class=ArticleTableSeeder
php artisan db:seed --class=ArticleTableSeeder
如果提示找不到class时,执行
composer dump-autoload
7.回滚迁移
回滚最后一次迁移
php artisan migrate:rollback
回滚所有迁移
php artisan migrate:reset
回滚所有迁移并重新运行所有迁移
php artisan migrate:refresh
回滚所有迁移并重新运行所有迁移,并填充数据
php artisan migrate:refresh --seed
网友评论