在Rails 5中,我无法再使用rake任务迁移不同目录中的文件。我收到错误ActiveRecord::UnknownMigrationVersionError: No migration with version number 20180209214145
。
知道如何在Rails 5中做到这一点?我认为行ActiveRecord::Migrator.migrations_paths = ['db/manual_migrate']
不再按预期工作,但我不太确定如何修复它。
desc 'Run db:migrate:up on a task we wish to migrate manually (e.g. not on all servers).' \
'VERSION is required.'
task manual_migrate: [:environment, :load_config] do
raise 'VERSION of migration is required for this task!' unless ENV['VERSION']
default_paths = ActiveRecord::Migrator.migrations_paths
ActiveRecord::Migrator.migrations_paths = ['db/manual_migrate']
begin
Rake::Task['db:migrate:up'].invoke
ensure
ActiveRecord::Migrator.migrations_paths = default_paths
end
end