所以我在模块中有一个Ruby方法和一个常量:
module Foo
URL = "http://foo.bar"
def self.fetch
# how can I get Foo::URL from in here?
end
end
如何从Foo::URL
内获取Foo.fetch
?
答案 0 :(得分:2)
由于您在模块中,因此无需指定模块。因此,
module Foo
URL = "http://foo.bar"
def self.fetch
URL
end
end
这样,
Foo.fetch
# => "http://foo.bar"
答案 1 :(得分:1)
您应该可以通过Foo :: URL访问。这对我有用:
module Foo
URL = "BAR"
def self.baz
Foo::URL
end
end
2.0.0-p195 :025 > Foo.baz
=> "BAR"
您还应该可以从模块内部访问裸URL
。当您尝试访问Foo::URL
时,您会收到什么错误?