Ruby on rails 如何在rake文件中初始化方法?

Ruby on rails 如何在rake文件中初始化方法?,ruby-on-rails,ruby,object,initialization,rake,Ruby On Rails,Ruby,Object,Initialization,Rake,为这个可能没有意义的问题道歉: 我有一个rake任务,设计用于从站点获取数据并将其保存为RateData对象 rs.each do |market,url| doc = Nokogiri::HTML(open(url)) doc.xpath("//table/tr").each do |item| provider = "rs" market = market rate = item.xpath('td[1]').text.gsub!(/[^0-9\.]

为这个可能没有意义的问题道歉:

我有一个rake任务,设计用于从站点获取数据并将其保存为RateData对象

rs.each do |market,url| 
  doc = Nokogiri::HTML(open(url))  
  doc.xpath("//table/tr").each do |item|  
    provider = "rs"
    market = market
    rate = item.xpath('td[1]').text.gsub!(/[^0-9\.]/, '')
    volume = item.xpath('td[2]').text.gsub(/[^k0-9\.]/, '')
    volume = volume.gsub(/\.(?=.k)/, '')
    volume = volume.gsub(/k/, '00')
    volume = volume.to_f
    rate = rate.to_f
    RateData.create(:provider => provider, :market => market, :rate => rate, :volume => volume, :bid_ask => 1)
  end
end
RateData.create方法位于rate\u data\u控制器中,当我在rails控制台中调用它时可以访问它。我如何使它在这个rake任务中可用


非常感谢

您需要将环境传递到任务中

task :your_task, [] => :environment do
还是用args

task :your_task, [:foo] => :environment do |task, args|