Ser*_*sev 105
您可以使用此获取当前目录(当前文件的目录)
File.dirname(__FILE__)
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用相对路径连接到根
File.join(File.dirname(__FILE__), '../../') # add proper number of ..
Run Code Online (Sandbox Code Playgroud)
或者您可以使用expand_path将相对路径转换为绝对路径.
ENV['BUNDLE_GEMFILE'] = File.expand_path('../../Gemfile', File.dirname(__FILE__))
Run Code Online (Sandbox Code Playgroud)
或者您可以计算两个dirs之间的相对路径.
require 'pathname';
puts Pathname.new('/').relative_path_from(Pathname.new('/some/child/dir/')).to_s
# => ../../..
Run Code Online (Sandbox Code Playgroud)
And*_*iep 20
__dir__
Run Code Online (Sandbox Code Playgroud)
从Ruby 2开始,您可以简单地使用Kernel-function :__dir__来获取当前文件的绝对目录路径.因此,举一个例子,您可以在(config.rb,environments.rb,constants.rb或其他任何调用它)的项目开头设置一个常量ROOT_DIR.
请参阅Ruby文档
| 归档时间: |
|
| 查看次数: |
49399 次 |
| 最近记录: |