众所周知, 迁移是Laravel中的一项重要功能, 它可以帮助我们以有序模式在数据库中创建表。有序模式意味着如果我们有一个运行php artisan命令的类, 则将创建具有所有字段和列的表。
让我们了解迁移结构。
步骤1:移至C:\ xampp \ htdocs \ laravelproject \ database \ migrations目录。
上面的屏幕截图显示, 我们已经打开了包含两个php文件的migrations文件夹。这些文件是类。该文件的名称为2014_10_12_000000_create_users_table, 其中2014_10_12_000000代表时间, create_users_table不代表表的名称, 而是迁移的名称。
第2步:双击该课程, 将带我进入扩展迁移的特定课程。
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateUsersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
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();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('users');
}
}
在上面的代码中, 我们观察到迁移类包含两个方法, 即up()方法和down()方法。 up()方法用于创建新表, 将新列或索引添加到数据库, 而down()方法与up()方法相反, 即, 它丢弃字段。上面的类基本上是在数据库中创建表。 up()方法通过使用Schema类运行静态方法, 即create()。
public function up()
{
Schema::create('users', function(Blueprint $table)
{
//
});
}
在up()方法的以上语法中, Schema是类, 而’create’是Schema类的静态函数。 create()方法包含两个参数, 即表名和闭包函数。 “用户”是表和闭合函数的名称, 其中Blueprint类及其对象作为参数传递。 $ table用于在users表中创建列。
$ table-> bigIncrements(’id’):这意味着$ table正在实现增量()方法, 该方法将在users表中创建id列, 并且此’id’是自动递增的。
$ table-> string(’name’):这意味着$ table实现了string()方法, 该方法在users表中创建name列。
$ table-> string(’email’)-> unique():这意味着$ table实现string()方法, 该方法在users表中创建email列。它还实现了unique()函数, 这意味着电子邮件应该是唯一的。
$ table-> timestamp(’email_verified_at’)-> nullable():这意味着$ table实现timestamp()方法, 该方法在users表中创建email_verified_at列。此函数还会创建两列, 即created_at和updated_at, 并且在添加或更新新记录时会自动更新这两个字段。
down()方法的代码如下:
Schema::dropIfExists('users');
在上面的代码中, 我们观察到down()方法通过使用Schema类调用dropIfExists(’users’)函数。此函数检查“用户”表是否存在, 如果“用户”存在, 则删除用户表。
注意:到目前为止, 我们已经了解了默认情况下已经创建的表或仅是蓝图。但是, 我们也可以根据应用程序的功能创建自己的表。
要运行上面的代码, 请按照以下步骤操作:
- 打开phpmyadmin, 它在xampp中可用。
- 单击选项卡中出现的数据库。
- 输入数据库名称, 然后单击创建按钮。
- 单击创建按钮后, 我们可以看到在面板的左侧创建了laravel_cms。
- 打开.env文件, 并添加在上一步中添加的数据库名称。
用你创建的名称更新数据库名称, 如上面的屏幕快照所示。
- 打开Git Bash窗口, 然后输入命令“ php artisan migration”。该命令的输出显示在以下屏幕截图中:
上面的屏幕截图显示了迁移表已创建。
- 下面的屏幕截图显示了phpmyadmin中的迁移表。
- 下面的屏幕快照显示了“用户”表的结构。
上面的输出表明, 在Git bash窗口中运行迁移后, 已经创建了“用户”表。
评论前必须登录!
注册