2012-08-24 39 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

相關問題