首页 > 解决方案 > 我在第 13 行收到一个错误。它说 `<<` 方法未定义。我该如何解决?我正在使用红宝石

问题描述

这是代码:

  def self.scrape_shoe
    @doc.css("div.product-card__body").each do |nike|
      name = nike.css("div.product-card__title").text.strip
      price = nike.css("div.product-card__price").text.strip
      shoes = self.new
      @all << shoes #having error here
    end 
  end 

这是错误:

Traceback (most recent call last):
        7: from bin/new_nikes:7:in `<main>'
        6: from /home/merkonical/new_nikes/lib/new_nikes/cli.rb:17:in `call'
        5: from /home/merkonical/new_nikes/lib/new_nikes/cli.rb:11:in `list_price'
        4: from /home/merkonical/new_nikes/lib/new_nikes/scraper.rb:9:in `scrape_shoe'
        3: from /home/merkonical/.rvm/gems/ruby-2.6.1/gems/nokogiri-1.10.4/lib/nokogiri/xml/node_set.rb:237:in `each'
        2: from /home/merkonical/.rvm/gems/ruby-2.6.1/gems/nokogiri-1.10.4/lib/nokogiri/xml/node_set.rb:237:in `upto'
        1: from /home/merkonical/.rvm/gems/ruby-2.6.1/gems/nokogiri-1.10.4/lib/nokogiri/xml/node_set.rb:238:in `block in each'
/home/merkonical/new_nikes/lib/new_nikes/scraper.rb:13:in `block in scrape_shoe': undefined method `<<' for nil:NilClass (NoMethodError)

我可以为此做哪些可能的修复?我正在研究红宝石

标签: rubycommand-line-interface

解决方案


我可以为此做哪些可能的修复?

@allnilnil没有名为 的方法<<。确定@all不是nil


推荐阅读