📜  laravel 迁移文件夹 - PHP (1)

📅  最后修改于: 2023-12-03 14:43:50.142000             🧑  作者: Mango

Laravel 迁移文件夹

迁移是 Laravel 框架中用于管理数据库结构变化的工具,通过编写迁移文件可以轻松地创建、修改、删除数据库表和字段。在 Laravel 中,迁移文件存储在 database/migrations 目录下。

目录结构
├── config
│   ├── app.php
│   └── database.php
├── database
│   ├── migrations
│   │   ├── 2021_01_01_000000_create_users_table.php
│   │   └── 2021_01_02_000000_create_posts_table.php
│   └── seeds
│       ├── DatabaseSeeder.php
│       └── UsersTableSeeder.php
├── public
│   ├── css
│   ├── js
│   └── index.php
├── resources
│   ├── lang
│   ├── views
│   └── assets
├── storage
│   ├── app
│   ├── framework
│   └── logs
└── ...

Laravel 迁移文件夹的主要内容位于 database/migrations 目录下。该目录存储所有的迁移文件,每个迁移文件对应一个数据库结构的变化操作。迁移文件的命名遵循时间戳的命名规则,以确保它们按照创建的顺序运行。

编写迁移文件

下面是一个示例的迁移文件 2021_01_01_000000_create_users_table.php,用于创建 users 表。

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateUsersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->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() 方法用于撤销创建表的操作。通过调用 Schema 类提供的方法,我们可以定义表的结构和字段。

运行迁移

要运行迁移文件,可以使用 Artisan 命令行工具提供的 migrate 命令。运行以下命令可以将所有未运行的迁移文件都运行一次:

php artisan migrate

如果仅想运行指定的迁移文件,可以使用 --path 参数指定迁移文件路径,例如:

php artisan migrate --path=database/migrations/2021_01_01_000000_create_users_table.php
撤销迁移

如果需要撤销迁移文件的操作,可以使用 migrate:rollback 命令。运行以下命令可以撤销上一次迁移操作:

php artisan migrate:rollback

如果想要撤销多个迁移文件,可以使用 --step 参数指定要回滚的步骤数,例如:

php artisan migrate:rollback --step=2
总结

Laravel 迁移文件夹是管理数据库结构变化的重要工具。通过编写迁移文件,可以轻松地创建、修改和删除数据库表和字段。运行和撤销迁移操作可以使用 Artisan 命令行工具提供的相关命令。以上便是关于 Laravel 迁移文件夹的介绍。

注意:以上内容为示例,实际迁移文件的内容和操作根据需求而定。