Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Activerecord 如何在Rails5中的rake任务中调用迁移_Activerecord_Ruby On Rails 5_Rake Task - Fatal编程技术网

Activerecord 如何在Rails5中的rake任务中调用迁移

Activerecord 如何在Rails5中的rake任务中调用迁移,activerecord,ruby-on-rails-5,rake-task,Activerecord,Ruby On Rails 5,Rake Task,在Rails5中,我不再能够使用rake任务迁移不同目录中的文件。我得到的错误是:版本号为20180209214145的未迁移 你知道我如何在Rails 5中做到这一点吗?我认为行ActiveRecord::Migrator.migrations\u path=['db/manual\u migrate']不再像预期的那样工作,但我不太确定如何修复它 desc 'Run db:migrate:up on a task we wish to migrate manually (e.g. not

在Rails5中,我不再能够使用rake任务迁移不同目录中的文件。我得到的错误是:版本号为20180209214145的未迁移

你知道我如何在Rails 5中做到这一点吗?我认为行
ActiveRecord::Migrator.migrations\u path=['db/manual\u 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