我正在尝试编写一个 Sinatra 应用程序,该应用程序从文件中读取列表,然后从该列表中返回一个随机项目。
不过,我很难找出文件的路径来读取它。当我尝试在浏览器中加载项目时,Sinatra 说“没有这样的文件或目录”:
Errno::ENOENT at /wod
No such file or directory - http://localhost:4567/listing.txt
这是代码:
require 'sinatra'
@list
get /item
puts read_list[rand(@list.size)]
end
def read_list
File.open('listing.txt', 'r').readlines
end
我有文件/public
,Sinatra README 说它是托管静态文件的默认位置。此外,如果我把它放进去,/public
我可以localhost:4567/listing.txt
在浏览器中导航并读取文件。