如何在rails应用程序的ruby中指定公共目录的路径?

luk*_*ups 9 ruby ruby-on-rails-3

我想解析文件public夹中的.csv文件,我试过了/../,#{RAILS_ROOT}/public但没有成功(没有这样的文件或目录错误).我不知道如何使用Rails.public_path(Rails.public_path/filename.csv不起作用)请帮忙

Fem*_*ref 19

您可以访问Rails.root路径,使用它来获取路径

Rails.root.join("public", "filename.csv")
Run Code Online (Sandbox Code Playgroud)

您可能需要调用to_s它,具体取决于您希望如何使用结果(作为Path对象或字符串).


Cir*_*四事件 12

在Rails 4中Rails.public_path,像Rails.root,返回一个stdlib Pathname对象,所以你也可以使用join它:

 Rails.public_path.join('filename.csv')
Run Code Online (Sandbox Code Playgroud)