8

だから私はsinatraを使って構築したウェブサーバーを持っています。その肉は次のようになります:

set :variable,"value"
get '/' do
  erb :index
end

そしてもちろん、テンプレートはviews/index.erb次のようになります。

<html>
<!-- etc -->
  <ul>
  <% my_array.each do |thing| %>
  <%="Something: #{thing}, variable from sinatra: #{settings.variable}"%>
  <% end %>
  </ul>
</html>

このようなコードを実行してみると、erb テンプレート内から sinatra の設定変数にアクセスできないことがわかります。シンプルさを保ちながらこれを達成する方法はありますか?

前もって感謝します!

4

2 に答える 2

2

私は古いバージョンのSinatraを使用していました-バージョン1.0に更新され、正常に動作します:)

みんな、ありがとう!

于 2010-04-02T23:31:44.300 に答える
0

同様の問題があり、解決策は、initialize メソッドの外側のset :x, "y"クラス宣言 (のサブクラス) ですべてが発生するようにすることでした。Sinatra::Base

于 2012-02-29T09:17:00.467 に答える