如何在Rails风格中读取文件

时间:2012-10-23 00:29:03

标签: ruby-on-rails ruby nokogiri

我将一些数据存储为XML文件。我将它放入我创建的目录app/data/myxml.xml

现在我想用Nokogiri解析它。要找到我引用绝对路径的文件:

@doc = Nokogiri::XML(open("/home/me/webA/myrailsproject/app/data/myxml.xml"))

绝对路径肯定会让代码难看。是否有更简洁,更清晰的方式来引用该文件?如:

@doc = Nokogiri::XML(open("myxml"))

1 个答案:

答案 0 :(得分:5)

Rails中的当前目录是应用程序根目录,因此您可以执行

@doc = Nokogiri::XML(open("data/myxml.xml"))

或者,如果您想确定,可以使用RAILS_ROOT常量 -

@doc = Nokogiri::XML(open("#{RAILS_ROOT}/data/myxml.xml"))