我的/ lib文件夹中有一些内容,如:
/lib/some_folder/some_file.rb
/lib/some_folder2/some_file2.rb
现在在我的rails 3应用程序中,我将引用some_file和some_file2
中的方法如何引用它们而不必根据其module :: class_name.method完全限定它们?
答案 0 :(得分:3)
我认为您可以使用Include
语句,如以下示例所示:
<强> module_test.rb:强>
module ModuleTest
class Class1
def do_something
puts "Class 1 do something"
end
end
end
<强> module_test2.rb:强>
module ModuleTest2
class Class2
def do_something
puts "Class 2 do something"
end
end
end
对模块进行资格认证:
require_relative 'module_test'
require_relative 'module_test2'
ModuleTest::Class1.new.do_something
ModuleTest2::Class2.new.do_something
<子> 的输出:强> 子>
'Class 1 do something'
'Class 2 do something'
使用包含声明:
require_relative 'module_test'
require_relative 'module_test2'
include ModuleTest
include ModuleTest2
Class1.new.do_something
Class2.new.do_something
<子> 的输出:强> 子>
'Class 1 do something'
'Class 2 do something'