我对Ruby很新,面对一个非常基本的问题我猜。我可能错过了一些基本的概念和结构。所以这就是我想要做的,
我正在写一个sinatra项目,我有一个用不同文件编写的类。结构看起来像这样,
project_name
- api.rb
- base.rb
- settings.rb
在我的api.rb文件中,我定义了一个类和一些方法,它还调用了一些形式为base.rb的方法,base.rb调用了一些来自settings.rb的方法
在api.rb
require 'sinatra'
require 'json'
require 'uri'
require 'base' --> This is the base.rb which is resulting in error
module XX
class Api
def some_method
base = Base.new
base.setup
# some more code
end
end
end
在base.rb中,它具有以下代码
require 'settings'
module XX
class Base
def setup
# some code
end
def some_method
#some code
end
end
end
当我刚运行ruby api.rb时,我在require语句中遇到错误,无法加载这样的文件 - 基础(LoadError)。
我在这里失踪的是什么?另外,ruby如何知道它是宝石还是需要文件。它检查是否需要是项目中的文件,然后继续检查宝石?这个过程如何在ruby中完成?
非常感谢任何帮助!