を保留中として移行を示しています。私はレールを実行しているサーバーから切断されたRailsの移行が完了し表示されますが、熊手はまだ私がテーブルに列を追加するために大規模なMySql2のDB上の簡単なレールの移行を実行した
class AddMiddleNameToPerson < ActiveRecord::Migration[5.0]
def change
add_column :person, :middle_name, :string
end
end
アプリをインストールします。私は、ダウンとしてそれを示した0と移行ステータスを、再接続してチェック:
down 20170424182410 Add middle name to person
、私はそれがまだバックグラウンドで実行されたと仮定します。だから私はしばらくそれを去り、最終的にはレールコンソールを使ってperson.middle_nameがオブジェクト上でアクセス可能であることを確認しました。しかし、db:migrate:status
はまだダウンして移行を示しており、私は再びdb:migrate
を実行しようとした場合、私はエラーを取得する:
Mysql2::Error: Duplicate column name 'middle_name'
だから、新しい列がデータベースにあると思われ、そしてActiveRecordを介してアクセス可能な、しかしrake db:migrate:status
発見down
とrake db:migrate
のような移行では、再実行が試行されませんでした。
これを解決するためにこれに似た何かをやってしまった。受諾する。 – wildabeast