2013-04-06 6 views
-1

heroku를 실행 한 후 db : migrate를 실행하면이 오류가 발생합니다. . 응용 프로그램이 development.i도 잘 작동이 웹 사이트에 대한 몇 가지 조사를 해본 몇 가지 해결책을 시도 working.can 누군가가 내가 그걸 고칠 수있는 방법을 알아낼 수 있습니까?heroku 마이그레이션 문제

== CreatePins: migrating ===================================================== 
-- create_table(:pins) 
NOTICE: CREATE TABLE will create implicit sequence "pins_id_seq1" for serial column "pins.id" 
rake aborted! 
An error has occurred, this and all later migrations canceled: 

PG::Error: ERROR: relation "pins" already exists 
: CREATE TABLE "pins" ("id" serial primary key, "description" character varying(255), "created_at" timestamp N 
OT NULL, "updated_at" timestamp NOT NULL) /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.13/lib/active_re 
cord/connection_adapters/postgresql_adapter.rb:650:in `exec' 

답변

0

이렇게하면 pins이 이미 있음을 알 수 있습니다. pins을 만드는 두 가지 마이그레이션이 있거나 또는 Rails가 마이그레이션을 실행한다는 것을 알거나 기억하지 않고 테이블을 생성 할 수 있었던 것일 수 있습니다. 나는 heroku db:push을 사용하여 하나의 테이블을 푸시 (이 경우 pins to Heroku)하지만 schema_migrations의 내용이 아닐 때이 상태로 들어갈 수 있다는 것을 알았습니다. 따라서 마이그레이션을 시도하고 실행할 때 테이블이 존재합니다.

새로운 것이고 핀에 데이터가없는 경우 psql, pgadmin 도구 등을 사용하여 핀 테이블을 삭제하고 마이그레이션을 다시 실행하고 레일스에서 ​​마이그레이션을 실행하고 완료 한 사실을 저장하게 할 수 있습니다 (schema_migrations 테이블에 마이그레이션 식별자를 저장합니다)