我一直在Ruby中看到这一点:
require File.dirname(__FILE__) + "/../../config/environment"
__FILE__
是什么意思?
我一直在Ruby中看到这一点:
require File.dirname(__FILE__) + "/../../config/environment"
__FILE__
是什么意思?
它是对当前文件名的引用.在文件foo.rb
中,__FILE__
将被解释为"foo.rb"
.
Edit: Ruby 1.9.2和1.9.3的表现似乎与Luke Bayes在his comment中所说的略有不同.有了这些文件:
# test.rb
puts __FILE__
require './dir2/test.rb'
# dir2/test.rb
puts __FILE__
运行ruby test.rb
将输出
test.rb
/full/path/to/dir2/test.rb