Я уже спрашивал об этом, но не получил рабочего ответа, и, возможно, у меня есть лучший способ задать этот вопрос.
Короче говоря, я удалил некоторые проблемные файлы миграции (проблема возникает из-за неправильных файлов миграции; существует файл add_column_to_stocks перед файлом create_stocks), но по какой-то причине, heroku продолжаетсяхотеть перенести эти старые, удаленные файлы.Я понятия не имею, где хранятся эти файлы.
Если я делаю героку db:migrate:status
, это ответ:
Status Migration ID Migration Name
--------------------------------------------------
up 20171231042756 Create articles
up 20171231044214 Add description to articles
up 20180116183526 Create users
up 20180116191414 Add user to articles
up 20180116195212 Add password digest to users
up 20180305082108 Create categories
up 20180305090315 Create article categories
down 20180515064500 Add latest price to stocks
down 20180517202216 Add timetables to stock
down 20180517205823 Add updatedtime to stocks
down 20180521021514 Create user stocks
Проблемы начинаются с первого файла вниз.
Моя локальная папка миграции выглядит примерно так:
20171231042756 Create articles
20171231044214 Add description to articles
20180116183526 Create users
20180116191414 Add user to articles
20180116195212 Add password digest to users
20180305082108 Create categories
20180305090315 Create article categories
20180515064499 Create stocks.rb
20180521021514 Create user stocks.rb
Независимо от того, какие изменения я делаю в своих локальных файлах миграции, она по-прежнему хочет перенести эти проблемные файлы, поэтому я всегда получаюответ:
PG::UndefinedTable: ERROR: relation "stocks" does not exist
: ALTER TABLE "stocks" ADD "latest_price" decimal
Я попытался войти в консоль heroku psql и удалить их вручную, но delete from schema_migrations where version = 20180515064500
возвращает ответ DELETE 0
, то есть он ничего не удалил.
Я, черт возьми, зашла в тупик, и я потратил на это около полутора недель, разбивая голову.
Спасибо всем заранее !!Любая помощь приветствуется.