以前の移行を破る:Railsのモデルのバリデータは、私は、以下のステップを含むレールアプリの移行の配列を有し
- このモデルのインスタンスを作成します。「ユーザー」モデルの基本的なバージョン
- を作成します - 私のシステムに少なくとも1人の初期ユーザーがいなければならないので、ログインして使い始めることができます
- 「ユーザー」モデルを更新して新しいフィールド/列を追加します。
ここでは、この新しいフィールド/列に "validates_inclusion_of"を使用しています。これは、これらの移行が適用されたデータベースをすでに持っていた初期の開発マシンでうまく機能しました。ただし、新しいマシンに移動してすべての移行を実行すると、移行3のフィールドがまだモデルクラスに追加されていないため、validates_inclusion_ofが失敗するため、手順2が失敗します。回避策として
、私は、「検証し_...」の行をコメントアウトマイグレーションを実行し、それをコメント解除し、それは素晴らしいではありませんすることができます。より良い
は、ユーザーの作成(ステップ2)が最後になるように、すべての列が追加された後、私の移行を並べ替えることであろう。
私もレールの初心者ですので、私は、私はこのような状況を処理するための好ましい方法は:)