ユーザーがエンティティを追加および削除できるアプリケーションを作成しています。アプリケーションは、モデル、移行を生成し、データベースを移行します。効果的には次のようになります。
`rails generate model #{model_name}`
`rake db:migrate`
ユーザーがモデルを削除すると、ファイルをクリーンアップし、テーブルを削除する新しい移行を生成します。
この時点で、次のような移行のリストが表示されます。
20110515130423_create_customers.rb 20110515130445_create_houses.rb 20110515130457_drop_customers.rb
問題ありません - すべて動作します。それらの完全なセットを移行すると、ものが追加されてから削除されますが、問題ありません。
誰かが以前に追加したモデルを追加しようとすると、私の問題が発生します。Rake は次のように言って中止します:
複数の移行の名前は CreateCustomers です
私は何をすべきか?私が最初に試すアプローチは、このようなループを検出してから、すべての移行をクリアすることです。これにより、移行データベースが奇妙な状態のままになりますか?
助けてくれてありがとう - 私はこれがちょっと変わった状況であることを知っています ;-)