0

だから、たくさん読んだ後、データベースを前もって計画する必要がないことがわかりました。私はアプリケーションの作業を開始し、変更ごとに移行を行います。

たとえば、何かを追加することにした場合は、移行を介して追加します。次に、別の移行で、何らかの理由でそれを削除します。そして最後に、私はそれを取り戻すことにしました。しばらくすると、移行の混乱が発生します。

どうすればそれらを追跡できますか? そもそもデータベース構造を考える方が簡単ではないでしょうか?

4

2 に答える 2

0

Rails の方法は、マイグレーションを介してすべてを行うことです。あなたのシナリオによれば、それは次のようになります:

migration1 #add column A
migration2 #remove column A
migration3 #add column A again

多くの移行があるように見えますが、実際のシナリオでは、データベースの変更をクリーンに保ちます。いつでも次のことを行うためです。

rake db:migrate

Rails は、保留中の移行のみを実行します。

そして、いつでもdb/schema.rb、すべての移行と最新の移行番号をバージョンとして含むファイルが表示されます。

そうは言っても、移行を元に戻したい場合は、コマンドのようなrollbackコマンドがあります。移行の詳細については、こちらをご覧ください

于 2013-05-07T04:01:35.183 に答える