ホームページ >PHPフレームワーク >Laravel >[Laravel 8の新機能] schema:dumpを使用して移行とテストを高速化する

[Laravel 8の新機能] schema:dumpを使用して移行とテストを高速化する

藏色散人
藏色散人転載
2020-08-11 13:31:302250ブラウズ

-次のチュートリアル列では、Laravel 8の新機能を紹介します。スキーマの使用:ダンプ:移行とテストをスピードアップします。困っている友人に役立つことを願っています。

Laravel 8 は、今年後半に新しい

schema:dump[Laravel 8の新機能] schema:dumpを使用して移行とテストを高速化する コマンドをリリースする予定です。このコマンドは、不要になった古い移行を削除し、テストと CI プロセスを高速化するため、既存のプロジェクトに役立ちます。 Taylor Otwell は、

プル リクエスト

でこの機能について説明しています。 この PR では、mysqldump または pgdump ダンプを使用する php 職人 schema:dump

コマンドが追加されています。スキーマの状態をdatabase/schema/{connection}-schema.mysqlファイルに書き込みます。

このファイルが存在し、 phpArtisanmigration または

phpArtisanmigration:fresh

が実行され、データベース z で移行が実行されていない場合 (移行テーブルが空) , このスキーマ ファイルは最初にデータベースにロードされ、その後、すべての未処理の移行が実行されます。これは、スキーマ ファイルが通常、ローカル開発または CI テスト中にのみ使用できることを意味します。実稼働環境では通常、過去にすでに移行が実行されているため、このスキーマ ファイルがトリガーされることはありません。 schema:dump

を実行し、スキーマ ダンプ ファイルがプロジェクトに存在した後、運用環境に移行した古い移行ファイルを削除できます。

この機能は 2 つの問題を解決します: 1. 古いプロジェクトではサイズが大きくなる可能性がある、スキーマ フォルダー内の古い移行ファイルを消去します。

2. スキーマ ファイルのおかげで、テストははるかに高速に実行され、Laravel はテスト プロセス中にすべての移行を実行する必要がありません。

コマンドはプロジェクト内では次のようになります:

php artisan schema:dump

# 自动清理旧迁移文件
php artisan schema:dump --prune

# 指定数据库链接
php artisan schema:dump --database=pgsql

この機能は

master

ブランチにマージされています。つまり、Laravel 8 で利用可能になります。この機能の詳細については、

8.x Schema Dump

を参照することをお勧めします。 元のアドレス: https://laravel-news.com/schema-dump

翻訳アドレス: https://learnku.com/laravel/t/43497

以上が[Laravel 8の新機能] schema:dumpを使用して移行とテストを高速化するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。