## 創建
通過以下命令創建遷移文件
~~~
php artisan make:migration create_xxx_table
~~~
還可以通過更簡便的方式,在創建模型的時候順帶創建遷移文件
~~~
php artisan make:model xxx -m
~~~
在創建模型的時候帶上-m就可以創建和模型對應的遷移文件了.
## 設置字段
~~~
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('nick_name',60)->default('')->comment('昵稱'); //字符串類型,長度為60
$table->string('phone')->unique(); //手機號碼是唯一的
$table->string('password');
$table->string('name')->default('')->comment('姓名');
$table->tinyInteger('gender')->default(0)->comment('0是未知,1是男,2是女');
$table->string('company')->default('')->comment('公司名稱');
$table->boolean('is_verify')->default(false)->comment('是否認證');//布爾類型
$table->string('api_token')->unique()->comment('api_token');
$table->dateTimeTz('expire_time')->comment('過期時間');
$table->rememberToken();
$table->timestamps();
$table->softDeletes();
});
}
public function down()
{
Schema::dropIfExists('users');
}
~~~
當我們運行遷移時,up方法會被調用.當我們回滾遷移時down方法會被調用.
## 進行遷移
當設置好遷移文件后使用命令進行遷移
~~~
php artisan migrate
~~~
## 運行回滾
回滾到最近一次遷移的數據庫
~~~
php artisan migrate:rollback
~~~
## 對遷移文件添加字段
有時候我們需要對已經遷移過的表進行修改.laravel 也提供了方法.通過命令生成進行修改的遷移文件,在命令行后面加上--table=users指定需要添加的模型名稱.
~~~
php artisan make:migration add_xxx_table --table=users
~~~
代碼實現,在up方法中.
~~~
public function up()
{
Schema::table('users', function (Blueprint $table) {
$table->boolean('is_admin')->default(false);
});
}
~~~
通過命令完成對表的修改.
~~~
php artisan migrate
~~~