1
假設具有以下結構Ruby項目...紅寶石:所需的類內管理文件路徑
project/
|-- data
| `-- data.yaml
|-- lib
| |-- project
| | `-- myclass.rb
| `-- project.rb
在LIB /項目/ myclass.rb,如圖的例子中我加載數據/ data.yaml下面...
def MyClass
data = YAML::load(File.open('../../data/data.yaml'))
# Other stuff..
end
在LIB/project.rb,我有項目/ myclass.rb
如果project.rb運行時,下面的錯誤將被拋出...
Errno::ENOENT: No such file or directory - ../../data/data.yaml
爲了解決這個問題,我有那麼它是相對於根或lib目錄更新myclass.rb使用的文件路徑...
../data/data.yaml
有沒有更好的處理這個問題的方法?
謝謝!這工作完美。 – 2012-01-06 06:12:57