0

これは Rails アプリの lib/tasks フォルダーにあります。何らかの理由で、タスクを実行しようとするたびにエラーが発生し続けます。

desc 'Fetch product prices'
task :fetch_prices => :environment do

  require "nokogiri"
  require "open-uri"

  Product.each do |product|
    url = "http://www.lowes.ca/search/#{CGI.escape(product.title)}.html"
    doc = Nokogiri::HTML(open(url))
    price = doc.at_css(".fntlb").text[/[0-9\.]+/]
    product.update_attribute(:price, price)
    puts "Product #{Product.id} has been updated with price #{price}"
  end
end

このタスクを実行しようとすると、次のエラーが表示されます: rake aborted! 未定義のメソッドeach' for nil:NilClass /vagrant/depot/lib/tasks/product_prices.rake:7:inブロック '

4

2 に答える 2

1

あなたはしたくProduct.all.eachないProduct.each。少し奇妙ですが、エラーはゼロだと言っています。

于 2013-07-10T19:04:33.307 に答える