我的ruby项目看起来像这样:
my_dir
- app
+ controllers
+ views
+ models
* foo.rb
- doc
+ dummy.txt
在foo.rb
内,我有一个常量,使用如下
PATH_TO_DUMMY="../../doc/dummy.txt"
def bar(path=PATH_TO_DUMMY)
# do something
end
“../../doc/dummy.txt”是定义<my_dir>/doc/dummy.txt
路径的正确方法吗?
它看起来不太好,因为这只是来自app/models
有没有办法获得我的项目目录的绝对路径,所以我可以做类似的事情:
PATH_TO_DUMMY=File.jon(PROJECT_ROOT, "doc/dummy.txt")
答案 0 :(得分:2)
File.join(Rails.root, "doc", "dummy.txt")
或
Rails.root.join("doc", "dummy.txt")
答案 1 :(得分:0)
使用Rails.root
获取项目目录的路径。在你的情况下它将是
PATH_TO_DUMMY=File.join(Rails.root, "doc/dummy.txt")