2010-08-24 46 views
3

以下.rb腳本如果excuting在腳本的文件夾中運行良好:如果腳本運行該腳本文件夾之外如何在ruby腳本的同一文件夾中打開文件?

db = YAML::load(File.open('db.yml')) 
    ActiveRecord::Base.establish_connection(db) 

File.open將失敗。我如何提供腳本的路徑爲db.yml?謝謝!

回答

9

這應該工作:

db_file = File.join(File.dirname(__FILE__), "db.yml") 

編輯:我有點困惑與腳本文件夾,這應該現在的工作。

1

如果你發現自己想這樣做了一堆,你可以考慮加入腳本的目錄添加到您的負載路徑(尤其是1.9.2,其中不再負載路徑「」):

$: << File.expand_path(File.join(File.dirname(__FILE__))) 
相關問題