Итак, я сделал глупую ошибку вручную удалить файлы миграции из моего проекта.Как удалить недостающие миграции из проекта?
Они все еще показывают в db:migrate:status
, но я не в состоянии rollback
или destroy
их без создания новых пустых файлов с MigrationID_somename, а затем запустить уничтожить на этих шаблонных файлов.
Есть ли лучший способ забыть пропущенные файлы миграции?
me$ rake db:migrate:status
database: [...]/db/development.sqlite3
Status Migration ID Migration Name
--------------------------------------------------
up 20141203044050 ********** NO FILE **********
up 20141203044501 ********** NO FILE **********
me$ rake db:migrate:down VERSION=20141203044501
rake aborted!
ActiveRecord::UnknownMigrationVersionError:
No migration with version number 20141203044501
/Library/Ruby/Gems/2.0.0/gems/activerecord-4.1.6/lib/active_record/migration.rb:932:in `run'
/Library/Ruby/Gems/2.0.0/gems/activerecord-4.1.6/lib/active_record/migration.rb:818:in `run'
/Library/Ruby/Gems/2.0.0/gems/activerecord-4.1.6/lib/active_record/railties/databases.rake:79:in `block (3 levels) in <top (required)>'
Tasks: TOP => db:migrate:down
(See full trace by running task with --trace)
Мне, к сожалению, пришлось это сделать раньше. – sevenseacat