2017-03-08 8 views
1

私がもう必要としなかった(削除された、ロールバックされない)マイグレーションファイルを削除しました。その後、マイグレーションを実行しようとしました。私のレーキタスクは何もしなくなりました。私の問題を解決してしまったのは、別の移行を追加してrake dbを実行していたことです。最新の移行のために移行してください。その後、最新のスキーマが設定された後、私のレーキタスクは再び完全に機能しなくなりました。Rails DB Rakeタスクがマイグレーションファイルの削除後に実行されない

私はレールを使用しています5.私はdb作業のために新しいrailsコマンドを使用しようとしましたが、それは動作しませんでした。

私はここにコードを表示していないことを知っていますが、この問題では難しいです。私は私のアプリのためのタスクを実行すると何が起こるのスクリーンショットを含めた。バージョンをアップグレードしなければならないので、さまざまなルビー警告が表示されますが、それらは関連していません。

enter image description here

は、誰もが前にこの問題に直面したり、それを解決する方法上の任意のアイデアを持っていますか?

答えて

0

私はこれまでにこれを持っていましたが、完全な答えを得るのに十分な情報がありませんので、私のためにいくつか提案しました。

あなたは何か徹底的に試してみる前に、rails db:resetを実行してください。

うまくいけばうまくいけばうまくいけば、あなたはgitやsvnを使っているだろう。動作した時点に戻り、移行ファイルを削除しないでください。必要のないテーブルを削除する新しい移行を作成します。

これを行うには、新しい移行ファイルを作成する 'rails g migration drop_TABLE_NAME'を実行する必要があります。

def change 
drop_table :TABLENAME 
end 

gitを使用していない場合は、db/schema.rbを編集してみます。

0

db.ymlのデータベースをデフォルトに設定しました。私は実際のデータベース名を宣言して、それを動作させるためにマイグレーションを実行しなければなりませんでした。

私のために私のdb.ymlは次のようになります。

デフォルト:&デフォルト アダプタ:postgresqlの テンプレート:template1では プール:5 以前に、それはこのように見えますが

default: &default 
    adapter: postgresql 
    template: template0 
    database: job-board-development 
    pool: 5 
    timeout: 5000 

タイムアウト:5000

関連する問題