module Hints
module Designer
def message
"Hello, World!"
end
end
end
p Hints::Designer.message
为什么这会给我以下错误...?为提示::设计师红宝石模块
未定义的方法`消息”:模块(NoMethodError)
module Hints
module Designer
def message
"Hello, World!"
end
end
end
p Hints::Designer.message
为什么这会给我以下错误...?为提示::设计师红宝石模块
未定义的方法`消息”:模块(NoMethodError)
你需要做的是定义消息作为一个类的方法(而不是实例方法)。尝试:
module Hints
module Designer
def self.message
"Hello, World!"
end
end
end
puts Hints::Designer.message
如果你想使用实例方法与模块,必须扩展使用模块和任何给定的约束条件(见http://ruby-doc.org/core/classes/Module.html)的对象。
使用p Hints::Designer.new.message
消息是一个实例方法不是一类方法
仍然得到了同样的错误,通过这样做... :( – 2010-07-14 14:41:24
sry,只有当'设计师'是一个类的作品,我没有阅读整个文本仔细,我的眼睛看到他们曾经看到... http://codepad.org/AZ5TaShz – clyfe 2010-07-15 09:37:08
你想用这样的:
module Hints
module Designer
def self.message
"Hello, World!"
end
end
end
也就是说,让message
“阶级”的方法(这是前一个实例方法)。这看起来有点奇怪,但请记住,模块通常用于创建混合类,因此“模块实例”在该上下文中是有意义的。
这工作...很好.. thnx aloadz ... – 2010-07-14 14:41:53