Laravelの移行は、データベースのバージョン制御の一種です。開発者は、SQLステートメントを手動で書くのではなく、PHPコードを使用してデータベースの構造を管理および変更できるようにします。移行は、一連の増分ステップでデータベーススキーマの変更を定義する方法を提供し、さまざまな環境やチームメンバーでデータベース構造の変更を変更および共有しやすくします。
Laravelの移動は、基本的にフレームワークによって提供される基本Migration
クラスを拡張するPHPクラスです。これらのクラスには、 up
down
2つの主な方法が含まれています。 up
メソッドは、新しいテーブルの作成や列の追加など、「UP」を移行するときに実行されるアクションを定義します。一方、 down
メソッドは、テーブルのドロップや列の削除など、これらの変更を逆転させる方法を定義します。
移行は、いくつかの方法でLaravelのデータベーススキーマの変更を管理するのに役立ちます。
Laravelで移行を作成して実行するプロセスには、いくつかのステップが含まれます。
移行を作成する:新しい移行を作成するには、 make:migration
Artisanコマンドを使用できます。たとえば、 users
と呼ばれる新しいテーブルを追加する移行を作成するには、次を実行します。
<code>php artisan make:migration create_users_table</code>
このコマンドはdatabase/migrations
ディレクトリに新しいPHPファイルを作成します。
移行ファイルの編集:新しく作成されたファイルを開き、 up
down
メソッドを編集してスキーマの変更を定義します。たとえば、 users
テーブルを作成するには、 up
メソッドが次のようになる場合があります。
<code class="php">public function up() { Schema::create('users', function (Blueprint $table) { $table->id(); $table->string('name'); $table->string('email')->unique(); $table->timestamps(); }); }</code>
down
メソッドはこれらの変更を逆にする必要があります。
<code class="php">public function down() { Schema::dropIfExists('users'); }</code>
移行を実行します。データベースに変更を適用するには、 migrate
職人コマンドを使用します。
<code>php artisan migrate</code>
このコマンドは、すべての保留中の移行のup
メソッドを実行し、それに応じてデータベーススキーマを更新します。
はい、Laravelの移動はロールバックできます。この機能は、最近のスキーマの変更を取り消す必要がある場合に、開発中に特に役立ちます。最後の移行をロールバックするには、 rollback
Artisanコマンドを使用できます。
<code>php artisan migrate:rollback</code>
このコマンドは、最新の移行のdown
メソッドを実行し、データベースに行った変更を逆転させます。
複数の移行をロールバックする必要がある場合は、 --step
オプションを使用してロールバックする移行の数を指定できます。たとえば、最後の3つの移行をロールバックするには、実行します。
<code>php artisan migrate:rollback --step=3</code>
移動をロールバックすることに加えて、Laravelはmigrate:reset
コマンドを提供します。これはすべての移行をロールバックします。
<code>php artisan migrate:reset</code>
これにより、すべての移行が取り消され、データベースが初期状態になります。すべての移行をロールバックしてからすべての移行を再実行する場合は、 migrate:refresh
を使用できます。
<code>php artisan migrate:refresh</code>
これはmigrate:reset
に続いてmigrate
ます。
以上がLaravelの移行とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。