关注
2019.05.24 20:19:11字数 168阅读 4,606
假设很久之前创建了一张活动表
php artisan make:migration create_users_table
里面的字段如下:
.
.
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('name');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
.
.
现在需要新增一个头像的字段,迁移后想在表中增加字段的方法有两种:
- 重建数据库
在原本的迁移文件中增加字段后执行
php artisan migrate:refresh
执行完后会回滚数据库的所有迁移还会接着运行 migrate 命令。相当于重建,之前的数据也会没了。
- 新加一个迁移文件
php artisan make:migration add_avatar_into_users
然后打开迁移文件
.
.
// 运行迁移时会被调用
public function up()
{
Schema::table('users',function (Blueprint $table) {
$table->string('avatar')->after('name')->nullable();
});
}
// 回滚迁移时会被调用
public function down()
{
Schema::table('users', function (Blueprint $table) {
$table->dropColumn('avatar');
});
}
.
.
我们将 avatar 字段放在 name 字段后面。而修改表和创建表的区别就是 create 方法改成 table 方法。
本文指导如何在已有的用户表中通过迁移添加头像字段,介绍两种方法:重建数据库与新建迁移文件,并演示如何在`users`表中插入`avatar`字段并进行回滚操作。
260

被折叠的 条评论
为什么被折叠?



