이 간단한 스크립트를 사용하여 폴더에있는 모든 파일을 표시하지만 콘솔에서 작동하지만 Sinatra에서 다른 결과를 제공합니다 (경로 및 확장자 포함). 왜 그런가요? Sinatra를 사용하여 브라우저에서이 파일을 여는 링크로 ul 목록에이 기본 이름 (경로 및 확장자 없음)을 가장 잘 표시하려면 어떻게해야합니까? 목표는 파일 이름이 제공되지 않으면 클릭 가능한 페이지 목록을 제시하는 것입니다. 나는 이미 파일을 보여줄 루틴을 가지고있다.Ruby Sinatra : 클릭 가능한 파일 목록 표시
콘솔 :
require 'find'
def get_files path
dir_array = Array.new
Find.find(path) do |f|
dir_array << f if !File.directory?(f) # add only non-directories
end
return dir_array
end
for filename in get_files 'c:/sinatra_wiki/views'
basename = File.basename(filename, ".*")
puts basename
end
=> index
index2
시나 : 당신의시나 구현에서
require 'find'
def get_files path
dir_array = Array.new
Find.find(path) do |f|
dir_array << f if !File.directory?(f) # add only non-directories
end
return dir_array
end
get '/' do
for filename in get_files 'c:/sinatra_wiki/views'
basename = File.basename(filename, ".*")
puts basename
end
end
=> c:/sinatra_wiki/views/index.htmlc:/sinatra_wiki/views/index2.erb
감사합니다.하지만 지금은 브라우저에 빈 ul이 표시되고 오류가 발생하지 않습니다. @arr의 내용이 index.erb에 무엇인지 어떻게 알 수 있습니까? 출력을 콘솔에도 보낼 수 있습니까? – peter
nevermind, 찾았습니다. 대답을 편집 할게요 – peter
글쎄, 실수 였어? 그것은 나를 도울 것입니다 :) – Kashyap