How to specify the path of the public directory in

2020-07-06 03:40发布

问题:

I want to parse .csv file which is in public folder, I've tried /../'s, #{RAILS_ROOT}/public but with no success (No such file or directory error). I dunno exactly how to use Rails.public_path (Rails.public_path/filename.csv doesn't work) please help

回答1:

You have access to the Rails.root path, use it to get a path

Rails.root.join("public", "filename.csv")

You'll possibly have to call to_s on it depending on how you want to use the result (as a Path object or as a string).



回答2:

In Rails 4, Rails.public_path, like Rails.root, returns a stdlib Pathname object, so you can also use join with it:

 Rails.public_path.join('filename.csv')