Откат миграции Engine Yard

Я развернул новую функцию в Engine Yard с миграциями. Конечно, я передал флаг миграции, и это сработало успешно. Но потом я решил убрать эту функцию.

Примечание. Эти миграции удалили некоторые столбцы.

Затем я откатился на github и снова развернулся, но теперь я получаю сообщение об ошибке postgres о том, что столбец не существует (это столбец, удаленный при миграции ранее)

Как откатить миграцию на Engine Yard?


person Tom Prats    schedule 08.10.2013    source источник


Ответы (2)


ТМП,

Несмотря на то, что в гем engineyard встроена команда rollback, было бы лучше просто выполнить развертывание с новой миграцией, которая эффективно добавляет столбцы обратно или обновляет код, чтобы не использовать отсутствующие столбцы.

Эван

person Evan Machnic    schedule 08.10.2013
comment
хотя это кажется неэффективным. я видел кое-что о команде отката, но это не справится. странно, что нельзя просто откатить миграцию - person Tom Prats; 09.10.2013

Я обнаружил, что когда вы подключаетесь по ssh к своему приложению на верфи, вы можете перейти в текущий каталог развертывания и запустить bundle exec rake ..., таким образом, вы можете запустить, вероятно, запустить bundle exec rake db:rollback

person Tom Prats    schedule 15.10.2013