Laravel 4 アプリを開発している最中に、Laravel の移行機能を利用することにしました。
質問:現在データベースにあるすべてのテーブルを作成するための移行を作成する必要がありますか? それとも、将来の変更のための移行のみを作成しますか?
Laravel 4 アプリを開発している最中に、Laravel の移行機能を利用することにしました。
質問:現在データベースにあるすべてのテーブルを作成するための移行を作成する必要がありますか? それとも、将来の変更のための移行のみを作成しますか?
これに対する完全な正解はありません。それはすべて、開発スタイル、一緒に作業している人数と環境の種類 (単一の運用 DB? 複数の開発 DB?)、移行の要件など、多くの変数に依存します。 .
この時点までに DB 全体の移行を作成することにした場合は、移行が潜在的な競合を処理できることを確認する必要があります。などを使用して、Schema::has()
テーブルを作成する前にテーブルが存在することを確認します。
または、DB に白紙の状態があるかのように移行を記述し、移行を実行する前に、すべての開発者が空の DB から開始するように強制することもできます。これにはリスクがありますので、注意が必要です。移行で何かを忘れて、それを変更する必要がある場合に備えて、バックアップがあることを確認してください。
TL;DR: プロジェクトの途中で構造全体に移行を使用することは、必ずしも悪いことですか? いいえ、それはあなたのアプリケーションに合っていますか? それは完全に依存します。