0

という名前の配列を反復処理しようとしてい@itemsます。クラス変数に追加してSLIMから呼び出すことで、配列を出力できるのではないかと考えました。私は何を間違っていますか?

require "rubygems"
require "sinatra"
require "slim"
set :port, 80
get "/" do
  slim :index
end
get "/history" do
  @items = Dir.entries(File.expand_path(File.dirname(__FILE__)) + "/history").to_a
  slim :history
end
__END__
@@layout
doctype html
html
  head
    title Web View
  body
    div id="main" name="main"
      h1 Web View
      == yield
@@index
h2 Available Options
a href="/history" id="history_view" name="history_view" History
@@history
h2 History
- unless items.empty?
  - for item in items do
    a href="#{item}/output.html" item
  - else
    p NO ITEMS FOUND
4

1 に答える 1

2

items「履歴」レイアウトでメソッドを呼び出そうとしたようです。elseこれに加えて、句のインデントレベルを見てください。コードを変更してみてください:

h2 History
- unless @items.empty?
  - for item in @items do
    a href="#{item}/output.html" item
- else
    p NO ITEMS FOUND
于 2011-11-29T21:03:03.823 に答える