如何在ruby中初始化模块类?

时间:2014-03-05 01:44:48

标签: ruby

我有一个像这样的模块

module urlfetch
  class fetch

    def initialize(url)
      @url = url
      analyze!
    end

   #extra methods goes here

  end
end

我试过这个

response = urlfetch::fetch("http://google.com")
puts response

但我收到的错误如undefined method fetch

2 个答案:

答案 0 :(得分:4)

ruby中的

类和模块由大写名称定义,所以

module Urlfetch
  class Fetch

    def initialize(url)
      @url = url
      analyze!
    end

   #extra methods goes here

  end
end

然后通过new方法

初始化一个类
response = Urlfetch::Fetch.new("http://google.com")
puts response

答案 1 :(得分:2)

首先,模块和类应该大写,作为常量。其次,您需要new来构造一个对象。

URLFetch::Fetch.new("http://google.com")