2016-12-01 19 views
1

私はRails 4のアクションチュートリアルに従って作成した私のレールアプリをデプロイしようとしています。私は正常にHerokuのが、時に実行すくいデシベルをにプッシュした:私はこのエラーを取得してい移行:PG :: Undefinedtable:ERROR:実行時:rake db:migrate on Heroku

heroku run rake db:migrate 
Running rake db:migrate on ⬢ fast-lowlands-66439... up, run.6711 (Free) 
    ActiveRecord::SchemaMigration Load (10.5ms) SELECT "schema_migrations".* FROM "schema_migrations" 
Migrating to CreateStates (20161123222713) 
    (2.5ms) BEGIN 
== 20161123222713 CreateStates: migrating ===================================== 
-- create_table(:states) 
-- add_reference(:tickets, :state, {:index=>true, :foreign_key=>true}) 
    (1.4ms) ALTER TABLE "tickets" ADD "state_id" integer 
    (9.7ms) CREATE INDEX "index_tickets_on_state_id" ON "tickets" ("state_id") 
    (4.6ms) ALTER TABLE "tickets" ADD CONSTRAINT "fk_rails_fc553dc329" 
FOREIGN KEY ("state_id") 
    REFERENCES "states" ("id") 

    (0.6ms) ROLLBACK 
rake aborted! 
StandardError: An error has occurred, this and all later migrations canceled: 

PG::UndefinedTable: ERROR: relation "states" does not exist 
: ALTER TABLE "tickets" ADD CONSTRAINT "fk_rails_fc553dc329" 
FOREIGN KEY ("state_id") 
    REFERENCES "states" ("id") 

アプリはローカルで動作し、テーブルが存在しています。
ファイルの追加が必要な場合はお知らせください。 いつもの助けをありがとう。

答えて

2

は私がHerokuの上のデータベースを削除して再作成(あなたがDBに保存されたすべてのデータを失うことになる)になります:

heroku pg:reset DATABASE_URL --confirm your_app_name 

でyour_app_nameを交換してくださいあなたは、以下の手順としてこれをやろうとすることができますアプリ名は英雄で、DATABASE_URLのままにしておきます。

heroku run rake db:setup 

それは、これらのコマンドの両方を実行します:

heroku run rake db:migrate 
    heroku run rake db:seed 

をそして、あなたは設定する必要があります

次に実行します。

2

あなたの以前の移行が見当たりません。

heroku run rake db:create 
heroku run rake db:schema:load 
heroku run rake db:migrate 
関連する問題