如何将参数传递给 rake 任务,以便它在不同的模式上执行 rake 任务?例如,我有如下 rake 代码:
namespace :update_persons_table do
task :import => :environment do
config = Rails.configuration.database_configuration
ActiveRecord::Base.connection.schema_search_path = "my, public, data_master_reports"
# do stuff make updates to table....
end
end
我从命令行调用这个 rake 任务,如下所示:
RAILS_ENV='production' rake update_persons_table:import
顺便说一句,我正在使用的上述 RAILS_ENV 调用是否与:environment do
我在第二行中使用的语句有关?因为在我的 database.yml 文件中,我确实有一个production:
数据库条目。我试图弄清楚整个管道是如何工作的。此 rake 任务更新数据库中的表。但我希望能够在不同数据库中的另一个克隆表上调用它。如何通过在命令行中传递参数来做到这一点?