2012-08-24 34 views
1

我在Sinatra上运行一个项目,现在它有很多文件是一个子目录,所以我想查看这些文件的列表以及它们各自的目录。 例如,我在地址栏中输入“localhost:4567/landing /”,其中登陆是一些页面的容器,但是它给我带来这个“Sinatra不知道这个小事。” 有没有办法做到这一点。 我希望你明白我在问什么。如何在sinatra的目录中查看我的文件列表?

回答

4

Sinatra不处理本地文件系统,它处理HTTP路由。例如,'/'get '/' do指的是您网站的根网址,而不是您网站的根目录。为了列出本地文件,你需要使用Ruby的Dir类,像这样:

#!/usr/bin/env ruby 

require 'rubygems' 
require 'sinatra' 

get '/' do 
    Dir.entries('.').map { |e| "<p>#{e}</p>" } 
end 

编辑:当然,这是危险的直接与文件系统的工作,即使使用的路线,所以我建议你稍微阅读一下,以更好地理解幕后发生的事情。

+0

谢谢!它工作正常! – ErwinGO

+0

请考虑接受答案 –

+0

完成! 我是这个网站的新手,不知道如何接受答案。 – ErwinGO

相关问题