2

我有一个文件位于/lib/dir/file.xml

我试图通过以下方式调用它:

file = Nokogiri::XML(File.open('#{RAILS_ROOT}/lib/dir/file.xml'))

但我得到了错误,我不确定我做错了什么。该文件肯定存在。

Errno::ENOENT: No such file or directory - #{RAILS_ROOT}/lib/dir/file.xml

如果有帮助,我在 rails 4 和 Ruby 2 上。如何加载此文件?

4

1 回答 1

5

我发现了问题所在。

RAILS_ROOT已贬值。你应该Rails.root改用。

因此,对于将来看到这种情况的人来说,这是解决方案:

root = Rails.root.to_s #make sure string    
file = Nokogiri::XML(File.open("#{root}/lib/dir/file.xml"))
于 2013-06-10T19:34:06.330 回答