Возможно ли перенести серию миграций за один раз?

#ruby-on-rails

#ruby-on-rails

Вопрос:

У меня ошибка в моих миграциях для нового приложения. В приложении выполнено более 30 миграций, и одна из них вызывает ошибку.

Есть ли способ перенести пять миграций за раз, чтобы выполнять миграции быстрее, чем выполнять каждую по отдельности?

Ответ №1:

Если вы укажете версию, к которой хотите перейти, будет запущен набор миграций, который приведет к этой версии. Версия — это числовой префикс в вашем имени миграции.

Итак, если у вас есть этот набор миграций:

 12345_do_a.rb
23456_do_b.rb
45678_do_c.rb
56789_do_d.rb
  

и вы просто хотели запустить первые две, вы можете сделать

 rake db:migrate VERSION=23456
  

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