Laravel 迁移结构2025年3月17日 | 阅读 3 分钟 我们都知道,迁移是 Laravel 中一个重要的特性,它有助于我们以有序的方式在数据库中创建表。有序方式意味着如果我们有一个类运行 php artisan 命令,它将使用所有字段和列创建表。 让我们了解一下迁移结构。 步骤 1: 移动到 C:\xampp\htdocs\laravelproject\database\migrations 目录。 ![]() 上面的截图显示我们已经打开了 migrations 文件夹,其中包含两个 php 文件。这些文件是类。文件的名称是 2014_10_12_000000_create_users_table,其中 2014_10_12_000000 代表时间,而 create_users_table 并不代表表的名称,而是迁移的名称。 步骤 2: 双击该类,它将带我到扩展 Migration 的特定类。 在上面的代码中,我们观察到迁移类包含两种方法,即 up() 方法和 down() 方法。up() 方法用于创建新表,将新列或索引添加到数据库,而 down() 方法与 up() 方法相反,即它删除字段。上面的类基本上是在数据库中创建表。up() 方法运行静态方法,即 create(),使用 Schema 类。 在 up() 方法的上述语法中,Schema 是类,'create' 是 Schema 类的静态函数。create() 方法包含两个参数,即表的名称和闭包函数。'users' 是表的名称,闭包函数中传递 Blueprint 类及其对象作为参数。 $table 用于在 users 表中创建列。 $table->bigIncrements('id'): 这意味着 $table 正在实现 increments() 方法,该方法在 users 表中创建了 id 列,并且这个 'id' 是自增的。 $table->string('name'): 这意味着 $table 实现了 string() 方法,该方法在 users 表中创建了 name 列。 $table->string('email')->unique(): 这意味着 $table 实现了 string() 方法,该方法在 users 表中创建了 email 列。它还实现了 unique() 函数,这意味着 email 应该是唯一的。 $table->timestamp('email_verified_at')->nullable(): 这意味着 $table 实现了 timestamp() 方法,该方法在 users 表中创建了 email_verified_at 列。此函数还创建了两个列,即 created_at 和 updated_at,并且当添加或更新新记录时,这两个字段会自动更新。 down() 方法的代码如下所示 在上面的代码中,我们观察到 down() 方法使用 Schema 类调用了 dropIfExists('users') 函数。此函数检查 'users' 表是否存在,如果 'users' 存在,则它会删除 users 表。 注意: 到目前为止,我们已经了解了默认创建的表或只是一个蓝图。但是,我们也可以根据应用程序的功能创建自己的表。要运行上面的代码,请按照下面给出的步骤操作
![]()
![]()
![]()
![]() 使用您创建的名称更新数据库名称,如上图所示。
![]() 上面的截图显示迁移表已创建。
![]()
![]() 上面的输出显示在 Git bash 窗口中运行迁移后,'users' 表已创建。 下一个主题生成迁移 |
我们请求您订阅我们的新闻通讯以获取最新更新。