2017-10-17 1 views
0

데이터베이스를 만들 때 처음에 마이그레이션을 실행했는데 모든 것이 정상적으로 작동했습니다. 그런 다음 나는 가서 postgresql에서 테이블을 수동으로 삭제했다. 이제 rake db : migrate를 실행하면 실행되지만 테이블이 생성되지 않습니다.Ruby on rails 마이그레이션이 작동하지 않습니다.

+0

예 이미 실행 된 마이그레이션으로는 작동하지 않습니다. 레일스는 이전에 실행되지 않은 레일즈 만 실행합니다. 마이그레이션을 다시 롤백하고 실행하는 방법 밖에 없습니다. – krishnar

답변

1

마이그레이션에 따라 다릅니다. rake db:migrate은 정의에 따라 표를 작성하거나 변경할 수 있습니다. 처음에 데이터베이스와 테이블을 설정하려면 rake db:schema:load 또는 rake db:setup을 사용할 수 있습니다. rake -T은 사용 가능한 모든 레이크 작업에 대한 개요를 제공합니다.

데이터베이스 마이그레이션은 하나의 열 version이있는 schema_migrations 테이블에 저장됩니다. 문제의 마이그레이션 버전이 여기에있는 한 마이그레이션은 다시 실행되지 않습니다.

+0

이전과 완전히 똑같은 이전입니다. 테이블을 만듭니다. 그런 다음 데이터베이스에서 테이블을 삭제하고 다시 작성하려고합니다. – fineboy1

+0

버전을 이미 포함 할 수있는'schema_migrations' 테이블이 있습니다. 그에 따라 대답을 업데이트했습니다. – 0x4a6f4672

+0

감사합니다. 그게 문제를 해결하는 것 같습니다. – fineboy1

관련 문제