2011-03-20 6 views
3

나는 어제 마이 그 레이션에 신참 실수를했다. 이미 업로드되어 실행 된 마이그레이션을 수정했으며 새로운 버전을 업로드하기 전에 롤백하는 것을 잊어 버렸습니다. 이제 열이 이미 있거나 (위) 또는 삭제할 열이 없기 때문에 마이그레이션이 실패합니다!명령 줄에서 강제로 마이그레이션 할 수 있습니까?

변경 사항을 콘솔에서 한 번만 실행하도록하려면 을 먼저 마이 그 레이션 한 다음 다시 제거해야합니다.

답변

4

안정적인 상태로 돌아가는 간단한 방법은 데이터베이스를 수동으로 변경하여 열을 추가하여 롤백이 작동하도록 한 다음 롤백을 수행하고 다시 마이그레이션하는 것입니다.

+0

내가 가지고있는 문제는 내가 Heroku를 사용하고 있으며 db에 직접 액세스하는 방법을 알 수 없다는 것입니다. 기존 이전/롤백 + 새 이전/이전으로 두 번 업로드하는 것이 더 쉽습니다. – sscirrus

+1

명령 줄에서 "heroku rake db : reset"을하면 어떨까요? 예, 모든 프로덕션 데이터를 지우지 만 모든 마이 그 레이션을 강제 실행하고 나중에 백업에서 사용자 데이터를 복원 할 수 있습니다. – Svilen

관련 문제