0

既存のデータベースやその他のレガシー アプリと統合する必要があるアプリに取り組んでいます。従来のアプリ全体で、特定のテーブルに特定のレコードが存在するという暗黙の前提が行われています。

たとえば、従来のコードでは、'Valid' という名前のレコードがテーブル 'statuses' に存在し、ユーザー名が 'System' のレコードが users テーブルに存在すると想定しています。

レガシー コードを掘り下げながら、これらの暗黙の仮定を書き留めて明示的にすると、次のことが可能になります。

  • 非常に巨大な本番データベースのダンプを使用する代わりに、小さな開発データベースをセットアップします。

  • ステージングデータベースをセットアップします(ここでも、本番環境からの無数のレコードはありません)。

  • クリーンで予測可能なデータベースでテストを実行します。

  • べき等であり、既存のデータベースを台無しにしないでください。

問題は、システム レコードが存在しない場合、システム レコードを作成するために何を使用するかということです。Rails の移行、シード、イニシャライザなどを選択しますか?

4

1 に答える 1

1

種子はここに行く方法だと思います。

于 2012-07-02T13:13:22.720 に答える