0

我有一个模块如下,

主.rb:

module Main
 include Dad::Mam
end

在 dad.rb 中:

module Dad
 module Mam
  puts "Mam is saying you are very lazy..."
 end
end

我该如何命名这个文件?dad.rb 对吗?

但是在运行时

$ ruby main.rb

我收到一个错误,例如,

main.rb:2:in <module:Main>': uninitialized constant Main::Dad (NameError) from main.rb:1:in'

Mam我需要在运行 ruby​​ 时在模块下的 puts 内显示语句main.rb

我对使用 ruby​​ 的模块感到困惑,请任何人帮助我并指导我..

4

1 回答 1

1

在这种情况下,由于您只是在编写一个简单的脚本,请使用#require_relative

require_relative 'dad'
module Main
 include Dad::Mam
end

对于实际的应用程序或库,您可能希望管理加载路径(一个全局变量,其中包含一个告诉 ruby​​ 在哪里查找文件的数组),然后使用普通的require

于 2012-09-07T05:34:58.263 回答